Page 293 - 4503
P. 293
котрий сформований фотоелементом і тригером Шмідта.
Мікроконтролер, котрий у цей момент є зайнятий якоюсь
фоновою програмою, повинен перейти на обробку цієї
зовнішньої події EVENT. Потрібно отримати на певному
регістрі величину, що відповідає кількості деталей, що
перетнули лазерний пучок упродовж робочого дня, під
кінець якого мікроконтролер скидається. Максимальна
кількість деталей — 256.
Програма 9.1. Підрахунок кількості деталей
STATUS equ 03 ; регістр STATUS
INTCON equ h’0B’;регістр керування
;перериваннями
INTF equ 1 ; ознака зовнішнього
;переривання
INTE equ 4 ; дозвіл зовнішнього
;переривання
GIE equ 7 ; дозвіл глобального
;переривання
_status equ h’34’;комірка для тимчасового
; зберігання копії регістра STATUS
_work equ h’35’ ; комірка для тимчасового
;зберігання копії регістра W
EVENT equ h’21;лічильник денної кількості
;деталей
;----ВЕКТОР СКИДАННЯ------------------------
org 000;при скиданні у РС заноситься адреса
;h’000’
goto MAIN ; перехід до початку фонової
;програми
;----ВЕКТОР ПЕРЕРИВАННЯ---------------------
оrg 004; при перериванні РІС перехід на
;адресу h’004’
293