Составители:
35
нюанс. Теперь код на индикацию отправляется в порт "C" из EEPROM,
чтобы продемонстрировать, 1) что она существует и 2) работает исправно.
Последнее замечание. Вы уже наверно заметили (об этом
говорилось ранее), что при нажатии на цифровые клавиши переключение
светодиода может происходить некорректно. Строка “if not b…” устраняет
этот дефект и предотвращает возможное вмешательство в седьмой бит
порта ‘E”,
который управляет переключением светодиода в обработчике
прерывания “interrupt TIMER0COMP” с помощью логической переменной
“b”.
Другой, универсальный вариант сохранения бита PORTE.7 для всех
случаев, когда производится вывод в порт “E” приведен в приложении 1.
Скомпилируйте программу и загрузите ее кнопкой “Flash ->
Program” программатора AVRprog. Затем, нажимая на цифровые
клавиши убедитесь в том, что их коды теперь записываются и
считываются из памяти EEPROM.
#### Результат покажите преподавателю ####
2.2.8 Самостоятельное задание.
Последняя модификация
программы, самостоятельная (смотри
вариант задания). Новые возможности “повесим” на незадействованную
пока клавишу “*”.
ПРИМЕЧАНИЕ: В работе не рассматривалась работа клавиатуры и
ее программирование, так как эти вопросы подробно исследуются в
работе №31 “Программирование клавиатуры на ассемблере ASM-51”. В
настоящей работе управление клавиатурой производится с помощью
вспомогательного модуля “KeyLib4PascaL.pas”, который дан в
приложении 2.
ПРИЛОЖЕНИЯ
Приложение 1. Синхронизация состояния линии порта PORTE.7.
Вводится дополнительная переменная-маска “mask_PE7”, в которой
старший бит с помощью “исключающего или - xor” переключается в
обработчике прерывания TIMER0COMP синхронно с переключением
Страницы
- « первая
- ‹ предыдущая
- …
- 33
- 34
- 35
- 36
- 37
- …
- следующая ›
- последняя »
