mov R7, # 4
call alarm
n5:
jnb Acc.5, n6
; 6-ий
mov R7, # 5
call alarm
n6:
jnb Acc.6, n7
; 7-ий
mov R7, # 6
call alarm
n7:
jnb Acc.7, not_al
; 8-и1
mov R7, # 7
call alarm
not_al:
mov TL1, # LOW (555)
mov TH1, # HIGH (555)
setb TR1
reti
select:
clr EX0
; підпрограма перегляду записання подій
clr TR1
: зупинка сканування датчіків
li:
mov DPTR, # 0FFF2h
; сканування перемікачів для відведенню номери події
movx A, @ DPTR
anl A, # 7
; маскування НЕ поьрібніх розрядів
inc A
; для правильної візуалізації
call get_num
; переведення 2 значення так кодом ССІ
mov DPTR, # 0FFF7h
; відображення введеної цифри
movx @ DPTR, A
call view
; виклик процедури, яка запишемо до DPTR адресою плдії
jnb P3.2, li
; заціклювання до підтвердження ввіоду
movx A, @ DPTR
; відображення ІНФОРМАЦІЇ про подійю відновідно до
mov DPTR, # 0FFF7h
; введеної цифри - номери події
call get_num
movx @ DPTR, A
setb EX0
setb TR1
reti
view:
mov B, # 20h
; процедуру запису до DPTR адреси події
mul AB
; так як запис має розмір 20h біт
mov DPTR, # 4000h
; перший адресу Першої події
mov R5, A
; мл
mov R6, B
...