ФЭА / АИТ / Курсовая работа По дисциплине: «Вычислительные машины, системы и сети» на тему: «Управление светодиодным индикатором»
(автор - student, добавлено - 1-05-2014, 09:42)
СКАЧАТЬ Вариант 2.1: СКАЧАТЬ Вариант 2.3: СКАЧАТЬ вариант 3.2: СКАЧАТЬ Вариант 3.3: СКАЧАТЬ Вариант 3.4: СКАЧАТЬ вариант 2.7: СКАЧАТЬ Вариант 3.7: СКАЧАТЬ вариант 3.8: СКАЧАТЬ вариант 2.9: СКАЧАТЬ вариант 3.9: СКАЧАТЬ Вариант 2.11: СКАЧАТЬ вариант 2.12: СКАЧАТЬ вариант 3.12: СКАЧАТЬ вариант 2.14: СКАЧАТЬ вариант 3.14:
КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ
«ВЫЧИСЛИТЕЛЬНЫЕ МАШИНЫ, СИСТЕМЫ И СЕТИ»
НА ТЕМУ:
«УПРАВЛЕНИЕ СВЕТОДИОДНЫМ ИНДИКАТОРОМ»
Вариант № 2.1
Содержание
Введение……………………………………………………..2 Теоретическая часть……………………………………...5 Базовая микропроцессорная система……………………..5 Типичные 8-разрядные микропроцессоры……………….6 Типичные интерфейсные БИС МП систем………………9 Ассемблеры…………………………………………………..10 Экспериментальная часть……………………………………….11 Описание программы………………………………………11 Последовательность выполнения программы………….13 Программа………………………………………………......15 Заключение………………………………………………..17 Список литературы……………………………………..18
Введение
В настоящее время микропроцессоры находят самое широкое и разнообразное применение в управлении технологическими процессами, в системах связи, в цифровых приборах, в электронных играх и т.д. Первую БИС, получившую название микропроцессора, выпустили в 1971 году. С этого времени начался стремительный рост производства микропроцессоров (МП), которые благодаря непрерывному улучшению их технических характеристик и постоянному снижению стоимости получают все более широкое распространение. Наметились две основные области использования МП: область вычислительной техники, где МП выполняют функции калькуляторов, микро - и мини- ЭВМ, а также область, связанная с заменой специализированных электронных устройств. Эффективное проектирование микропроцессорных систем невозможно без применения микрокомпьютерных систем поддержки разработок, которые используются на этапах конструирования, наладки, а иногда и на стадии документирования проектируемых систем. Микропроцессором называется программируемое логическое устройство, которое изготовлено по БИС-технологии. Сам по себе он не может решить ту или иную конкретную задачу. Чтобы это сделать, его нужно запрограммировать и соединить с другими устройствами. Появление микропроцессоров привело к резким изменениям в методологии проектирования логических систем. При традиционных подходах системы строятся из отдельных логических блоков (триггеров, вентилей и счетчиков), выбор которых диктуется конкретным назначением системы. Эти блоки соединяются между собой таким образом, чтобы обеспечивалась необходимая структура потока данных. При использовании произвольной логики в каждом случае требуется свое решение, и поэтому различные системы имеют очень мало общего. Микропроцессор, наоборот, позволяет создать систему управления общего назначения, которая затем может быть адаптирована для самых различных целей посредством небольших изменений схемы. Индивидуальность каждой отдельной системы обусловливается последовательностью команд (называется программой), которые управляют работой системы. Следовательно, существуют два разных аспекта микропроцессорных систем: физические компоненты (называемые аппаратными средствами) и программы (называемые программными средствами). Некоторая совокупность соединенных друг с другом системных устройств, включающая МП, память и устройства ввода/ вывода, нацеленная на выполнение некоторой четко определенной функции, называется микрокомпьютером или МП системой. Язык, который понимает МП, называется машинным языком, команды машинного языка представляют собой двоичные коды. Для облегчения пользования машинным языком заменяют код каждой команды коротким именем, называемым мнемоническим. Мнемоника оказывается гораздо проще для запоминания, чем машинные коды. Программы, написанные с использованием мнемонических обозначений, называются программами на языке ассемблера.
Теоретическая часть Базовая микропроцессорная система В системе с клавиатурой и цифровым дисплеем при нажатии клавиш на экране появляется соответствующая цифра. Микропроцессор является “мозгом” системы. В нем заключена вся логика, необходимая для распознавания и выполнения совокупности команд. В его запоминающем устройстве хранится программа, но могут храниться и данные. Через порты ввода и вывода микропроцессор обменивается информацией с клавиатурой и дисплеем. Отдельные узлы процессора связаны тремя шинами. Шина представляет собой группу проводов, обеспечивающих параллельное соединение устройств системы. Для выборки содержимого ячеек памяти или портов ввода-вывода в микропроцессоре используется адресная шина. Адреса ячеек указывают ячейки памяти, в которые информация должна быть занесена или из которых ее следует взять. Как только микропроцессор выберет определенную ячейку посредством адресной шины, он пересылает информацию на шину данных. Она идет либо от процессора к ЗУ или к порту вывода либо от порта ввода или ЗУ к процессору. Третья шина – управляющая. Она представляет собой группу проводов, несущих сигналы, которые сообщают ЗУ и устройствам ввода-вывода о готовности микропроцессора выполнить очередную пересылку данных. По управляющей шине передаются и такие сигналы, которые позволяют устройству ввода-вывода или ЗУ обращаться к процессору с запросами. Один разряд двоичной информации (1 или 0) называется битом (сокращенно от binary digit – двоичная цифра). Один цифровой сигнал высокого или низкого уровня передает 1 бит информации. Микропроцессор обрабатывает не каждый отдельный бит данных, а группы битов, называемые словами. В настоящее время наиболее распространенные микропроцессоры работают с 8-разрядными байтами, это 8-разрядные микропроцессоры. Типичные 8-разрядные микропроцессоры 8-разрядный процессор фирмы Intel 8085 является типичным представителем широко распространенного семейства микропроцессоров. Он имеет следующие функциональные узлы: арифметико-логическое устройство, аккумулятор, регистр команд, дешифратор команд и шифратор машинных циклов, блок регистров общего назначения (В,C,D,E,H,L), буфер адреса (А8…А15), буфер адреса/данных (AD0...AD7), блок синхронизации и управления, блок управления прерываниями, блок последовательного ввода и вывода. Аккумулятор соединен с шиной данных и с арифметико-логическим устройством (АЛУ). АЛУ выполняет все преобразования данных. Аккумулятор – 8-разрядный программно-доступный регистр данных, предназначенный для хранения результатов операций АЛУ или данных при вводе/ выводе. Временный регистр обеспечивает другой вход АЛУ. Он управляется автоматически схемой управления микропроцессора. 8-разрядный регистр команд используется для хранения выбранной команды для дешифратора команд и шифратора машинных циклов. Дешифратор команд и шифратор машинных циклов осуществляют дешифрацию кодов команд, поступающих из регистра команд, и установку счетчиков шифратора машинных циклов в соответствии с этими кодами. Блок регистров хранит и выдает различную информацию, участвующую в процессе выполнения команд. Буфер адреса/данных – это 8-разрядный формирователь с тремя состояниями, предназначенный для выдачи младших разрядов адреса, либо приема/выдачи данных. Блок синхронизации и управления обеспечивает внутреннюю синхронизацию микропроцессора от встроенного тактового генератора. Блок управления прерываниями переключает микропроцессор с выполнения одной программы на другую с помощью сигналов прерывания. Блок последовательного ввода и вывода управляется командой RIM при вводе последовательных данных и командой SIM при выводе. МП считывает из памяти команды последовательно одну ячейку за другой, выполняя указанные действия. Коды операций и данные взаимно перемешаны в памяти. На рис.1 аккумулятор соединен с шиной данных и арифметико-логическим устройством (АЛУ), которое выполняет все преобразования данных, как, например, увеличение числа на 1 или сложение 2-х чисел. Временный регистр обеспечивает другой вход АЛУ. Этот регистр управляет автоматически схемой управления микропроцессора. Флаговый регистр – это набор триггеров, которые указывают определенные характеристики результата самой последней операции, выполненной АЛУ. Регистр команд, дешифратор команд, счетчик и логические схемы управления и синхронизации используются для выборки команд из памяти и управления их выполнением. Информация из регистра команд поступает на дешифратор команд (ДК), который распознает код операций и выдает сигналы управления на устройство управления и синхронизации. Имеющееся в интегральной схеме микропроцессора ПЗУ содержит микрокод или микропрограмму, которая точно указывает процессору, что надлежит делать, чтобы выполнить каждую команду на машинном языке. Система микрокоманд, которая является частью конструкции микропроцессора и обычно не может быть изменена, определяет машинный язык микропроцессора. Повторяющаяся последовательность действий называется циклом выборки-исполнения. Микропроцессор 8085 может выполнять операции четырех основных типов: 1) считывание данных из памяти или с входного порта; 2) запись данных в память или на выходной порт; 3) внутренние операции микропроцессора; 4) передачу управления другой ячейке памяти. Первые два типа понятны сами по себе. Третий тип (внутренние операции) включает действия с регистрами (такими как аккумулятор) без доступа к памяти или портам ввода-вывода. Четвертая группа включает команды типа JMP,CALL, RET. Типичные интерфейсные БИС МП систем Разнообразные периферийные устройства сопрягаются с МП системой посредством небольшого числа интерфейсных БИС. Для реализации большого набора операций периферийного устройства в БИС включают помимо команд ввода/вывода команды управления, контроля, оценки состояния , а также дополнительные функциональные узлы: память, таймеры. ЦАП, АЦП и т.п. Рассмотрим работу такой БИС на примере МС 8155 (фирмы Intel) и ее отечественного аналога 1821РУ55. В устройство 8155 входят: статическое ОЗУ емкостью 256 байт, два 8-разрядных и один 6-разрядный порты ввода/вывода и 14-разрядный программируемый счетчик и таймер. Элементом, определяющим режим работы МС, является регистр команд. В котором разряды 0-3 используются для указания функций портов, разряды 4 и 5 – для управления прерываниями, поступающими из порта С, когда он действует как порт, сопровождающий операции ввода/вывода в портах А и В, а последние два разряда 6-7 используются для управления таймером. Изменение содержимого регистра команд производится при выполнении операции ЗАПИСЬ по адресу ХХХХХ000, где ХХХХХ – базовый адрес БИС, 000-адрес регистра команд. При этом сигнал IO/M=1 и должен быть активным сигнал выбора БИС (СЕ=0). Порт А представляет собой регистр, который в зависимости от содержимого регистров управления и состояния может работать как порт ввода, либо как порт вывода. Кроме того он может работать в режиме с квитированием сообщений. Этот порт имеет адрес ХХХХХ001. Порт В аналогичен порту А и имеет адрес ХХХХХ010. Порт С является 6-разрядным регистром, имеющим адрес ХХХХХ011, и может использоваться как для ввода/вывода, так и для представления сигналов, сопровождающих ввод/вывод в портах А и В.
Ассемблеры Исходные программы не могут непосредственно исполняться микропроцессором. Исходный текст программы преобразуется сначала в форму, воспринимаемую микропроцессором. Для преобразования программ, написанных на языке ассемблера и подготовленных с помощью редактора, в программы на машинном языке используется специальная программа, которую называют ассемблером. Программы на машинном языке могут непосредственно выполняться процессором. В каждой строке исходной программы ассемблер различает 4 поля. Поля содержат переменное число знаков и определяются по своему положению в строке. В строке слева направо идут следующие поля, поле метки, поле операции, поле операндов и поле комментария. Поля разделяются ограничителями, по которым ассемблер определяет конец одного и начало следующего поля. Обычно в качестве ограничителей используются следующие знаки: пробел, табуляция.
Экспериментальная часть Описание программы
Необходимо разработать электрическую принципиальную схему и программу функционирования на языке ассемблера ASM 85 управляющей микропроцессорной системы, состоящей из:
арифметико-логическое устройство; аккумулятор; регистр признаков; регистр команд; дешифратор команд и шифратор машинных циклов; блок регистров общего назначения(B,C,D,E,H,L),регистровW,Z, указателя стека SP, программного счётчика PC и регистра адреса со схемой инкремента/декремента; буфер адреса (А8…А15);блоки синхронизации и управления;блок управления прерываниями; блок последовательного ввода и вывода. Аккумулятор соединён с шиной данных и с арифметико-логическим устройством. АЛУ выполняет все преобразования данных.
Буфер старших разрядов адреса представляют собой 8-разрядный выходной формирователь с тремя состояниями. Буфер адреса/данных представляет собой 8-разрядный формирователь с тремя состояниями, предназначенный для выдачи младших разрядов Ареса, либо приёма/выдачи данных. В первым тактовом периоде машинного цикла буфером адреса/данных выводятся 8 младших разрядов адреса, во втором и третьем периодах производятся ввод или вывод информации, т.е. эти разряды являются шиной данных. Блок синхронизации и управления обеспечивает внутреннюю синхронизацию микропроцессора от встроенного тактового генератора. Возбуждаемая частота внутренними схемами делятся на 2, и используется для синхронизации узлов как самого микропроцессора, так и внешних устройств системы с использованием вывода С. Блок управления прерываниями переключает микропроцессор с выполнения одной программы на другую с помощью сигналов прерывания. Блок последовательного ввода/вывода управляется командой RIM при вводе последовательных данных и командой SIM при выводе.
Микропроцессор соединён с регистром младшего адреса через адресную шину. После первого машинного такта и передачи информации через адресную шину шина становится шиной данных. После регистра младшего адреса данные поступают в ПЗУ, где хранится информация. Параллельно к нему включена периферийная БИС –1821RU55, к которой и подключается светодиодный индикатор. К выходу процессора CLK подключён таймер. Выходной сигнал посылается на БИС и с выхода TM OUT периферийной БИС подключается к входу прерывания RST7.5 микропроцессора. В данном задании требуется последовательно включать символы 1,2,3,4 на светодиодном индикаторе. Время свечения каждого символа – 1сек. Нормально замкнутая кнопка предназначена для включения семисегментного светодиодного индикатора. Последовательность выполнения программы
Для того, чтобы высвечивались символы, нужно в порт А (11 Н) отправить необходимую комбинацию из единиц и нулей в виде кода в шестнадцатеричной системе счисления, который соответствует символу. Например, для того, чтобы на светодиодном индикаторе загоралась цифра 1 нужно отправить в порт А код соответствующий этому 0110 0000, т.е. загораются только светодиоды В и С. Переведя в шестнадцатеричную систему счисления, получим 60 Н. Составим таблицу кодов в двоичной и шестнадцатеричной системах для данных символов:
LXI SP, 0500 H / Заполняем адрес в регистре SP. С этого начинается программа. MVI A, 01 H OUT 10 H / Программируем порт А на вывод, порт С на ввод. Для этого в регистре команд на порте А должны быть 1, а на порте С – 0. Отправляем в регистр команд 10Н слово режима 01. M1: IN 13 H / Проверяем состояние кнопки, считывая информацию с порта С (13 Н). Кнопка нормально разомкнута, т.е. на входе мы будем иметь 0. АNI 02 H / Для этого информацию с порта С мы будем сравнивать с числом 02 Н (в двоичной системе – 00000010) JZ М1 / Если не один, то проверяем кнопку снова. И до тех пор, пока мы не получим 1 (т.е. не замкнем кнопку), наша программа не будет работать. MVI A, __ H / Загружаем в аккумулятор код соответствующий символам 1,2,3,4 (повторяем 4 раза) OUT 11 H / отправляем этот код в порт А (11 Н). В результате эти символы будут высвечиваться на светодиодном индикаторе. CALL TIME / Вызываем подпрограмму TIME. TIME: MVI A, 10 H OUT 14 H / Код 10 – задаем младший байт таймера (14 H) MVI A, 27 H OUT 15 H / код 27 – старший байт таймера (15 Н). Эта подпрограмма задает время свечения каждого символа (0,01с). MVI A, C1 H OUT 10 H / Код С1 отправляем в регистр команд, чтобы работал таймер. RET / Чтобы свечение символа продолжалось 1 с. подпрограмму TIME вызываем, используя цикл, 100 раз.
MVI A, 00 H / Чтобы погасить весь индикатор загружаем в аккумулятор код 00 (00000000). OUT 11 H / Отправляем в порт А (11Н). В результате ни один из индикаторов гореть не будет. Теперь мы можем составить цельную программу. Её реализация будет выглядеть следующим образом: Программа на языке Ассемблера ASM 8085 LXI SP, 0500 H MVI A, 01 Н OUT 10 H
M1: IN 13 H АNI A, 02 H JZ М1 M7: MVI B, 04H MVI A,60H OUT 11H M3: MVI C,64H M2: CALL TIME DCR C JNZ M2
MVI A,00H OUT 11H DCR B MOV A,B JZ M7 CPI 03H JZ M4 CPI 02H JZ M5 CPI 01H JZ M6 M4: MVI A, DBH OUT 11H JMP M3 M5: MVI A, F2H OUT 11H JMP M3 M6: MVI A, 67H OUT 11H JMP M3 HLT TIME: MVI A, 10 H OUT 14 H MVI A, 27 H OUT 15 H MVI A, C1 H OUT 10 H RET Заключение
В результате проделанной курсовой работы я научился разрабатывать электрическую принципиальную схему и создавать программу функционирования на языке Ассемблера ASM 85. Система команд МП 8085 (как и большинства других МП) ограничена узким кругом простых команд. Машинный язык – это единственный язык, непосредственно воспринимаемый микропроцессором, но программирование на нем нелегко. Поэтому обычно программы пишутся на языке ассемблера, а затем транслируются на машинный язык специальной программой. Язык ассемблера – это не какой-то конкретный язык программирования, а целый класс языков. Каждый микропроцессор имеет собственный язык ассемблера. В нашем случае рассматривался язык ассемблера микропроцессора Intel 8085. Список литературы
Похожие статьи:
|
|