Курсовая работа: Микроконтроллер системы управления
CLRF; сброс бита
L6 : JNBK, START; прейти на метку START если бит равен 0
JMPL6; перейти на метку L6
; Подпрограммы
ALARM : SETBG; установка бита
CALLONESEC; вызов подпрограммы ONESEC
CPLG; инвертировать бит G
RET; возврат
Подпрограмма задержки на 30 секунд
PAUSE : MOVR6,#30; загрузить в регистр R6 константу
CALLONESEC; вызов подпрограммы ONESEC
DJNZR6, PAUSE; декремент регистра R6 и переход если не 0
RET; возврат
; Подпрограмма задержки на 1 секунду
ONESEC: MOVR7,#20; загрузить в регистр R7 константу
SEC: CALLDELAY; вызов подпрограммы DELAY
DJNZ R7, SEC; декремент регистра R7 и переход если не 0
RET; возврат
; Подпрограмма задержки на 50 мс
DELAY: MOVTMOD,#0001B; установка таймера /счетчика в режим 1
MOVTH0,#65536; загрузить в регистр TH0 константу
MOVTL0,#15536; загрузить в регистр TL0 константу
SETBTCON.4; пуск таймера / счетчика
DEL: JNBTCON.5, DEL; ожидание переполнения таймера / счетчика
CPLTCON.4; остановка таймера / счетчика
CPLTCON.5; сброс флага
RET; возврат
Список используемых источников
1. Сташин В.В., Урсулов А.В., Мологонцева О.Ф. Проектирование цифровых устройств на одно-кристальных микроконтроллерах. М.: Энерго-атомиздат, 1990. 224 с.