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
   288   289   290   291   292   293   294   295   296   297   298