ВЗАИМОДЕЙСТВИЕ МИКРОКОНТРОЛЛЕРА С ОБЪЕКТАМИ УПРАВЛЕНИЯ

Прерывания

Подпрограмма обработки прерывания должна сохранить в стеке содержимое тех регистров, которые она сама будет использовать, а перед возвратом в прерванную программу должна восстановить их значения.

Подпрограмма обработки внешнего прерывания уровня 0 может, например, иметь следующую структуру:

 

ORG 3 ;задание адреса вектора прерывания

SJMP SUBINO ;переход на подпрограмму обработки

 

ORG ЗОН

SUBINO: PUSH PSW ;сохранение в стеке PSW

PUSH ACC ;сохранение аккумулятора

PUSH В ;сохранение В

PUSH DPL ;сохранение DPTR

PUSH DPH

MOV PSW, #1000B ;выбор банка регистров 1

MOV A,#5 ;собственно обработка прерываний

MOV R1,A

ADD A,R1

MOV R2,A

POP DPH ;восстановление DPTR

POP DPL

POP В ;восстановление B

POP ACC ;восстановление аккумулятора

POP PSW ;восстановление PSW и номера банка

RETI ;возврат

Ввод информации с датчиков