9.4. Программа управления
В соответствии с заданием на работу подготовлена программа управления, листинг которой представлен (алгоритм функционирования исполнители работы должны представить самостоятельно в отчёте).
Входными параметрами программы являются коды первого числа Х1=74h, которое должно быть набрано на переключателях SA8–SA1 стенда в прямом коде до запуска программы на исполнение и второго числа Х2 = (принято 11h), которое должно быть установлено в течение первой паузы (в программе 10 с).
Выходными параметрами программы являются состояния индикаторов HL8–HL1 в соответствии с условиями задания.
Для достижения указанной длительности паузы таймер настраивается на 50000 счётных операций при длительности одной операции 2 мкс, что соответствует длительности счёта 0,1 с. Для счёта до 50000 в регистры TH0, TL0 следует загрузить число 1553610 (3CB0h). В программе в строке 5 установлен счётчик повтора таймерного цикла 100 раз. Настройка режима таймера, загрузка его счётчиков числом счётных операций, запуск счёта, разрешение прерывания от выбранного таймера и проверка завершения счёта таймерных циклов выполнены в основной программе управления. Обслуживание таймера сводится к перезагрузке счётчиков таймера и коррекции декрементом содержимого счётчика числа таймерных циклов.
При составлении программы учтены ограничения, связанные с архитектурой и процессора и учебного стенда.
Настройка режима таймера TMOD–11h. Статус TCON – битовая операция – «Разрешить счёт (set TR0)» / «Блокировать счёт (clr TR0)». Управление прерываниями – битовая операция – «Разрешить прерывание (set ET0)» / «Блокировать прерывание (clr ET0)». Загрузка старшего байта счёта в таймере -3C. Загрузка младшего байта счёта в таймере – B0.
Листинг программы:
1000 75 90 FF mov P1,# FF ; очистка буфера порта P1
1003 E5 90 mov A, P1 ; ввод с порта P1
1005 B4 76 3D cjne A,#76, 3D ;проверка Х1=74
1008 75 90 01 mov P1,#01 ; включение HL1
100b 74 64 mov A,#64 ; настройка числа повторов циклов
таймера в первой паузе
100d 75 89 11 mov TMOD, #11 ; таймер 0 в режим 1
1010 75 8C 3C mov TH0,# 3C ; загрузка таймера 0
1013 75 8A B0 mov TL0,# B0 ;
1016 D2 8C set TR0 ; разрешение счёта таймера 0
1018 D2 A9 set ET0 ; разрешение прерываний от таймера 0
101a B4 00 fd cjne A,#00, FD ; контроль завершения первой паузы 10 сек
101d C2 8C clr TR0 ; блокировка счёта импульсов в таймер 0
101f C2 A9 clr ET0 ; блокировка прерывания от таймера
1021 75 90 FF mov P1,# FF ; очистка буфера порта
1024 E5 90 mov A, P1 ; ввод с порта
1026 B4 11 27 cjne A,#11, 27 ; проверка Х2=11
1029 F 5 90 mov P1,A ; вывод Х2 для индикации
102b 74 C0 mov A,#C0 ; настройка числа циклов
; таймера 0 во второй паузе
102d 75 8C 3С mov TH0,# 3С ; загрузка таймера 0
1030 75 8A B0 mov TL0,# B0 ;
1033 D2 8C set TR0 ; разрешение счёта
1035 D2 A9 set ET0 ; разрешение прерываний от таймера 0
1037 B4 00 FD cjne A,#00, FD ; контроль завершения второй паузы 12 сек
103a C2 8C clr TR0 ; блокировка счёта импульсов в таймере 0
103c C2 A9 clr ET0 ; блокировка прерывания от таймера
103e 75 90 80 mov P1,#80 ; включение HL8 (оба числа опознаны)
1041 02 10 41 ljmp 1041 ; «пустой» цикл
1045 75 90 40 mov P1,#40 ; включение HL7 (неправильный набор Х1)
1048 02 10 48 ljmp 1048 ; «пустой» цикл
1050 75 90 20 mov P1,#20 ; включение HL6 (неправильный набор Х2)
1053 02 10 53 ljmp 1053 ; «пустой» цикл
1753 02 10 56 ljmp 1056 ; промежуточный переход к обработке
; прерывания от таймера Т0
Обработка прерывания:
1056 C2 8C clr TR0 ; блокировка подачи импульсов в таймер 0
1058 75 8C 3C mov TH0,# 3C ; загрузка таймера 0 (ст. байт)
105b 75 8A B0 mov TL0,# B0 ; младший байт
105e 14 dec A ; счёт повторов циклов таймера
105f D2 8C set TR0 ; разрешение счёта
1061 32 reti ; возврат из прерывания по таймеру.
Адреса программы управления и обработчика прерывания через ячейку 1753h приведены в листинге.
Объём программы – 91 байт.
Время выполнения программы определяется длительностью двух таймерных пауз.
- Л.А. Торгонский Микропроцессорные эвс Лабораторный практикум
- 1.1. Цель работы
- 1.2. Общие сведения об объектах изучения
- 1.3. Задание на лабораторную работу
- 1.4. Методические указания по выполнению работы
- Листинг представления программы и результата исполнения
- 1.5. Содержание отчета по работе
- 1.6. Вопросы для самоконтроля
- 2.1. Цель работы
- 2.3. Сведения о лабораторной установке
- 2.4. Система команд процессора и стенда умк
- 2.5. Методические указания к выполнению работы
- Форма листинга (к отчету по работе)
- 2.6. Содержание отчета по работе
- 2.7. Вопросы для самоконтроля
- Приложение а1
- Кодировочная таблица мп i8080 и стенда Старшая тетрада
- Приложение а2
- Команды микропроцессора мп i8080 и стенда
- 3.1. Цель работы
- 3.2. Задание на работу
- 3.3. Сведения о лабораторной установке
- 3.4. Сведения об объекте изучения и исследования
- 3.5. Методические указания к выполнению работы
- 3.6. Содержание отчета по работе
- 3.7. Вопросы для самоконтроля
- 4.1. Цель работы
- 4.2. Задание на лабораторную работу
- 4.3. Сведения о лабораторной установке
- 4.4. Сведения об объекте исследования занятия
- 4.5. Методические указания по выполнению работы
- 4.6. Содержание отчета по работе
- 4.7. Вопросы самоконтроля
- 5.1. Цель работы
- 5.2. Задание на лабораторную работу
- 5.3. Сведения о лабораторной установке
- Признак приказа Режим группы а Режим 0 0 0 1 Ввод c
- 5.4. Контроль времени в микропроцессорных средствах
- 5.5. Методические указания по выполнению работы
- 5.6. Содержание отчета
- 5.7. Вопросы для самоконтроля
- Программируемый параллельный адаптер (ppi) предназначен для организации параллельных синхронных, асинхронных двунаправленных и квазидвунаправленных интерфейсов периферийных устройств.
- Формат слова установки/сброса состояний регистра с приведен на рис. А5.4. Загрузка названного слова производится по адресу регистра управления при состоянии «0» разрядного бита d7.
- Сигналы подтверждения (ack) выдает принимающий порт, а сигналы сопровождения выдаёт передающий порт.
- 6.1. Цель работы
- 6.3. Сведения о лабораторной установке
- 6.4. Алгоритмы управления адаптерами аиз и акм
- 6.5. Методические указания по выполнения работы
- 6.6. Содержание отчета по работе
- 6.7. Вопросы для самоконтроля
- Приложение а6 Подпрограмма вывода звукового сигнала
- 7.1. Цель работы
- 7.2. Задание на лабораторную работу
- 7.3. Сведения о лабораторном стенде
- 7.4. Методические указания по выполнению работы
- 7.5. Содержание отчета по работе
- 7.6. Вопросы для самоконтроля
- 8.1. Цель работы
- 8.2. Задание на лабораторную работу
- 8.3. Сведения о лабораторном стенде
- Назначение разрядов регистров а, с
- 8.4. Подготовка макета к работе
- 8.5. Методические указания по выполнению работы
- 8.6. Содержание отчета по работе
- 8.7. Вопросы для самоконтроля
- 9.1. Цель работы
- 9.2. Задание на лабораторную работу
- 9.3. Сведения о лабораторной установке
- Формат регистра tmod управления режимами таймеров
- Формат регистр tcon управления статусом таймеров
- Формат регистра ie управления масками прерывания
- 9.4. Программа управления
- 9.5. Методические указания к выполнению работы
- 9.6. Содержание отчета по работе
- 9.7. Вопросы для самоконтроля
- Приложение а9
- Система команд омэвм семейства i8051
- Типы форматов команд
- Команды передачи данных
- Команды арифметических операций
- Команды логических операций и сдвига
- Команды передачи управления
- Команды операций с битами
- Л. А . Торгонский Микропроцессорные эвс Лабораторный практикум
- 634055, Г. Томск, пр. Академический, 13-24, Тел. 49-09-91.