Функциональная организация микро-ЭВМ и микроконтроллеров. Часть 2: К1816ВЕ48. Негода В.Н - 46 стр.

UptoLike

MOV SEC,A ;из таблицы
INC TABTIME ;TIME
MOV TIK,#0 ;сброс счетчика тиков
SEL RB0
EN TCNTI ;разрешение прерываний и
STRT T ;запуск таймера
WAIT: CALL CMPTIME ;ожидание заданного
момента
JF1 MAIN ;переход по истечении часа
JNC WAIT
CALL PROCESS ;переход к обработке данных
JMP WAIT ;переход к ожиданию
;Подпрограмма обработки данных
PROCESS: SEL RB0
;ввод в первый вектор из порта P1
MOV R2,#MAXSIZE
MOV R0,#VECT1
LOOP1: IN A,P1
MOV @R0,A
INC R0
DJNZ R2,LOOP1
;ввод во второй вектор из порта P2
MOV R2,#MAXSIZE
MOV R0,#VECT2
LOOP2: IN A,P2
MOV @R0,A
INC R0
DJNZ R2,LOOP2
;получение суммы и вывод в порт BUS
MOV R2,#MAXSIZE
MOV R0,#VECT1
MOV R1,#VECT2
LOOP3: MOV A,@R1
ADD A,@R0
MOV @R0,A
OUTL BUS,A
INC R0
DJNZ R2,LOOP3
RET
; Обработка прерывания от таймера каждые 20,48 мсек
; и перевод текущего времени в минуты и секунды