Программирование МК на ассемблере ASM-51 и AVR Pascal. Китаев Ю.В. - 69 стр.

UptoLike

Составители: 

69
ret
;================================================
menu1: DB "0-clear *-menu",0
menu2: DB "#-ADCpusk D-",0e1h,"A",0a8h,0;==0e1h,"A",0a8h - ЦАП
adc_pusk: DB "# - PUSK ADC",0
dac_code: DB "D - vyberite code",0
;================================================
END
##############################################################
ВНИМАНИЕ: Одну из записей в меню, в соответствии с заданием
необходимо русифицировать, например ADCpusk в АЦПпуск.
##############################################################
Оттранслируйте и загрузите программу. В следующем разделе 4-ре
нижних клавиши будут задействованы для выбора задач.
#### Результат покажите преподавателю ####
V). Разработка модуля простейшего цифрового вольтметра с
использованием ЦАП и АЦП.
В основной программе предусмотрим 4-ре задачи (действия):
вывод меню по нажатию на клавишу ‘*’
очистка экранаклавиша ‘0’
изменение напряжения с помощью ЦАП - клавиша ‘D’
измерение напряжения с использованием АЦПклавиша ‘#’
Для этой цели используем 4-
ре указанных клавиши и библиотеку
макроопределений и подпрограмм, разработанную в лаб. работе 31.
В соответствии с поставленной задачей модернизируем
основную программу (см. рисунок-диаграмму внизу). Операторы
осуществляющие выбор действий помещены внутрь бесконечного цикла:
“_88888888: jmp _88888888” Первая команда “Wait_4_KeyPressed”
вызывает подпрограмму ожидания нажатия на клавишу (находится в
файле “Key_module.a51”). При отпускании клавиши ее ASCII код
записывается в переменную “ascii_code”.
Следом начинается блок множественного выбора, построенный по
известному алгоритму. Код нажатой
клавиши сравнивается (командой
cjne…) с заданным кодом, в нашем случае с ‘*’. Ели коды совпадают,
выполняется задача 1” после чего команда jmp _88888888 возвращает
нас к новому циклу ожидания нажатия на клавишу. Если коды не
совпадают, команда cjne….. переходит к метке “reshetka” и далее процесс
сравнения повторяется. Если не нажата ни
одна из четырех