jnz reset1 ; нет, что-то нажато
; защита от дребезга при отпускании клавиши
dcr c ; ничего не нажато, уменьшение счетчика при защите от дребезга
jnz povt1 ; дребезг еще не окончен
mov a,e ; сохранение аккумулятора
;
;!!!-------------------------------------анализ нажатой клавиши--------------!!!
cpi kodkl4 ; нажата клавиша 4?
jnz dalee ; если клавиша 4 не нажата, то dalee
jmp moika ; 4 нажата, включаем или отключаем стеклоомыватель
dalee: cpi kodkl0 ; нажата клавиша 0?
jnz set ; если клавиша 0 не нажата, то 2
;
;!!!----------------------------------Останов--------------------------------!!!
;
jmp circl ; Останов - новая программа
;
;!!!-------------включение со скоростью 30 движений в минуту-----------!!!
;
set: mvi d,30 ; запись в регистр d количества движений
reti: in portc ; опрос клавиатуры
ani kodkl4 ; нажато 4?
jz dvigai ; если нет, то выполнение программы в обычном режиме
;
mvi c,povdr ; загрузка количества повторов при защите от дребезга
; защита от дребезга при нажатии
povt7: dcr c ; да, нажато, уменьшение счетчика повторов при защите от дребезга
jnz povt7 ; дребезг еще не окончен
; дребезг при нажатии окончен
; сохранение кода нажатой клавиши
in portc ; чтение кода нажатой клавиши
mov e,a ; сохранение аккумулятора
reset7: mvi c,povdr ; ожидание отпускания клавиши
povt8: in portc ; опрос клавиатуры
ana a ; ни одна клавиша не нажата ?
jnz reset7 ; нет, что-то нажато
; защита от дребезга при отпускании клавиши
dcr c ; ничего не нажато, уменьшение счетчика при защ. от дребезга
jnz povt8 ; дребезг еще не окончен
mov a,e ; сохранение аккумулятора
;
;
call sec ; вызов подпрограммы задержки на 1 секунду
mvi a,0dh
out porta ; вывод на индикацию левого положения дворника
call sec
mvi a,61h ; вывод на индикацию правого положения дворника
out porta
dcr d ; уменьшение счетчика количества движений
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.