Программирование микропроцессоров
Покупка
Тематика:
Программирование и алгоритмизация
Издательство:
Издательский Дом НИТУ «МИСиС»
Авторы:
Душин Андрей Николаевич, Горюнов Николай Николаевич, Маняхин Федор Иванович, Травин Александр Александрович
Год издания: 2003
Кол-во страниц: 57
Дополнительно
Лабораторный практикум содержит описание архитектуры микропроцессора Intel 8085, лабораторные работы с использованием среды разработки программ AVSYM для процессорного комплекта Intel 8085 по управлению внешними устройствами от параллельного порта персонального компьютера, пояснения к разработке программ и задания для самостоятельной работы, описание этапов технологии разработки и отладки программ, основные приемы работы с AVSYM. Практикум предназначен для студентов, изучающих курс «Программирование микропроцессоров» и «Применение микропроцессоров».
Тематика:
ББК:
УДК:
- 004: Информационные технологии. Вычислительная техника...
- 621: Общее машиностроение. Ядерная техника. Электротехника. Технология машиностроения в целом
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.03: Прикладная информатика
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
УДК 004.318:621.382 П78 Р е ц е н з е н т кандидат технических наук, доцент ^.Я Широков Программирование микропроцессоров: Лаб. практикум/ П78 А.Н. Душин, Н.Н. Горюнов, Ф.И. Маняхин, А.А. Травин. -М.: МИСиС,2003.-57с. Лабораторный практикум содержит описание архитектуры микропроцессора Intel 8085, лабораторные работы с использованием среды разработки программ AVSYM для процессорного комплекта Intel 8085 по управлению внешними устройствами от параллельного порта персонального компьютера, пояснения к разработке программ и задания для самостоятельной работы, описание этапов технологии разработки и отладки программ, основные приемы работы с AVSYM. Практикум предназначен для студентов, изучающих курс «Программирование микропроцессоров» и «Применение микропроцессоров». © Московский государственный институт стали и сплавов (Технологический университет) (МИСиС), 2003
ОГЛАВЛЕНИЕ Введение 4 Требования к подготовке выполнения лабораторных работ 4 Краткие теоретические сведения по микропроцессору Intel 8085....5 Лабораторнаяработа!. Эмулятор AVSYM 10 Лабораторная работа 2. Группы команд пересылок 15 Лабораторная работа 3. Арифметические и логические команды. Флаги 20 Лабораторная работа 4. Команды передачи управления по условию. Стек. Подпрограммы 25 Лабораторная работа 5. Порты ввода-вывода 29 Лабораторная работа 6. Программирование параллельного порта персонального компьютера на языке BASIC (интерфейс Centronics) 33 Библиографический список 45 Приложение. Краткая инструкция по использованию языка QBASIC 46 3
Введение Настоящий практикум предназначен для студентов, изучающих курс "Программирование микропроцессоров" и "Применение микропроцессоров". Работы выполняются на ЭВМ IBM с пакетом программ, включающим ассемблер, линковщик и эмулятор микропроцессора или микропроцессорного комплекта. Студенты обучаются основам программирования и отладки программных модулей, изучают архитектуру микропроцессорных средств. Каждая работа рассчитана на два академических часа. Перед проведением работы студент выполняет задания, требующие проработку соответствующих теоретических вопросов. Оформление работы включает создание электронных документов (файлов) в личной директории и заполнение карты - задания. При защите лабораторной работы студенты должны объяснить алгоритм работы программ и методы реализации. Лабораторные работы выполняются на базе IBM PC с использованием эмулятора AVSYM процессора I 8085 (или I 8251) в операционной системе DOS, макетов внешних устройств соединенных с параллельным портом, позволяющих изучать возможности управления ими через параллельный порт с использованием языка Basic. Требования к подготовке выполнения лабораторных работ . Подготовка к лабораторной работе состоит в изучении материала по теме лабораторной работы, ознакомлении с программой и заполнении таблицы задания или в разработке программы в соответствии с заданием. . К началу лабораторной работы необходимо изучить объект исследования, его характеристики и параметры. . Для выполнения работы в процессе подготовки студент набирает программы в соответствующих редакторах с использованием управляющих языков (Ассемблер, Basic). . Для лабораторных работ 1-5 выполняется компиляция программы с использованием программ ассемблера и линковщика, загружает программа в эмулятор, после чего реализуется программа в автоматическом или пошаговом режиме. . Проводится сопоставление результатов выполнения программы с ожидаемыми (данные в таблице). Оформляется отчет по лабораторной работе. 4
Краткие теоретические сведения по микропроцессору Intel 8085 1. Введение. Микропроцессор 8085 фирмы Intel На рис. 1 представлена упрощенная блок-схема микропроцессора 8085. Аккумулятор (А) соединен с шиной данных и арифметико-логическим устройством (ALU). ALU выполняет все арифметические и логические операции. Рис. 1. Упрощенная блок-схема микропроцессора 8085 Вспомогательный регистр (Т) передает на второй вход ALU данные второго операнда, если преобразование выполняется с двумя операндами (например, сложение двух чисел). Этот регистр недоступен программисту. Регистр флагов представляет собой набор триггеров, которые фиксируют характеристики результата последней операции, выполненной ALU. Например, флаг нуля устанавливается, если результатом операции является нуль. Регистр команд (KR), дешифратор команд (КОС), счетчик команд (PC) и схема управления и синхронизации (CSU) используются для выборки команд из памяти и управления их выполнением. Предположим, например, что команда, которую нужно выполнить, находится в ячейке с адресом ЮОН. Прежде всего, необходимо прочитать из памяти код операции, т.е. произвести выборку команды. Например, чтобы выполнить команду MVI А, DATA8, устройство управления и синхронизации, прежде всего, считывает код операции ЗЕ. Микропроцессор запоминает код операции в регистре команд и затем увеличивает адрес в счетчике команд. Дешифратор команд определяет, что вслед за этим кодом операции находится байт с данными, поэтому содержимое ячейки, имеющей адрес, указанный в PC (101Н), считывается в аккумулятор. 5
Имеющееся в интегральной схеме микропроцессора ПЗУ содержит микропрограмму, которая указывает процессору - что надлежит делать, чтобы выполнить команду на машинном языке. Микропрограмма теперь указывает схеме управления, что команда выполнена. Содержимое PC увеличивается на единицу, и в KR считывается следующий байт программы (следующий код операции). Затем начинается выполнение этой команды. Такая повторяющаяся последовательность действий, выполняемых микропроцессором, называется циклом выборки-исполнения. Микропроцессор 8085 может выполнять операции четырех основных типов: - считывание данных из памяти или с входного порта; - запись данных в память или на выходной порт; - внутренние операции микропроцессора; - передачу управления. Внутренние операции включают действия с регистрами (такими, как аккумулятор) без доступа к памяти или портам вводавывода. Например, содержимое одного регистра может быть передано в другой регистр или содержимое некоторого регистра может быть увеличено либо уменьшено на единицу. Операция передачи управления включает команды: передачи управления, вызова подпрограмм, возврата из подпрограмм. Микропроцессор, модули памяти, устройства ввода-вывода обмениваются информацией по шине данных (мультиплексная шина адреса/данных ADO - AD7) под управлением сигналов от устройства управления и синхронизации. Эта группа сигналов формирует шину управления. 2. Регистры общего назначения Одна из основных составных частей микропроцессора 8085 регистры общего назначения (РОН). Имеется шесть таких восьмиразрядных регистров, которые могут использоваться для временного хранения данных. На рис. 1. эти регистры обозначены буквами В, С, D, Е, Н и L. На рисунке изображен также указатель стека (SP). Регистры общего назначения полезны в случаях, когда программа работает с несколькими различными переменными. Каждый регистр в этом случае может иметь свое конкретное назначение, и до тех пор, пока достаточно шести регистров, нет необходимости использовать для запоминания данных оперативного запоминающего устройства (ОЗУ). 6
3. Краткая характеристика системы команд микропроцессора 8085 Большинство основных функциональных возможностей процессора 8085 обеспечивается ограниченным количеством команд. Команды манипулирования данными MVI, INR, СМА, ANI. Одна из основных операций микропроцессора - загрузка данных в аккумулятор. Эта операция выполняется по команде MVI А [данное]. С помощью команд: INR А (увеличить содержимое аккумулятора на единицу), СМА (преобразовать код в обратный) и ANI [данное]. можно выполнять все основные арифметические и логические операции. Команды сравнения и передачи управления CPI, JMP, JZ. Для сравнения числа с содержимым аккумулятора, используется команда CPI [данное]. Она соответствующим образом устанавливает флаги процессора, например флаг нуля, если результат операции равен нулю. Команда JZ [адрес] (переход по нулю) проверяет этот флаг и при его наличии инициирует переход к команде, находящейся в ячейке [адрес]. Имеется команда безусловного перехода JMP [адрес], которая вызывает передачу управления независимо от состояния флагов. Команды обращения к памяти и ввода-вывода LDA, STA. Команды LDA [адрес] и STA [адрес] (загрузить в аккумулятор и запомнить его содержимое) выполняют обмен данными между регистром - аккумулятором и памятью. Команды обращения к подпрограммам CALL, RET. Для организации использования подпрограмм необходимы команды CALL [адрес] служит для перехода на подпрограмму, и команда RET обеспечивает переход на команду, непосредственно следующую за последней выполненной командой CALL. Команды управления прерываниями SIM, El, DI. Управление прерываниями осуществляют три команды. Команда SIM (установить маску прерываний) используется для того, чтобы определить разрешенные и запрещенные прерывания. Команда EI (разрешить прерывания) дает разрешение на выполнение выбранных прерываний. Команда DI (запретить прерывания) запрещает всякие прерывания. Наличие разных модификаций команд облегчает написание программ, поскольку предоставляет возможность выбора из ряда 7