Разработка микропроцессорной системы на базе микропроцессора I-8085, содержащую: 2 кБ ROM памяти, 2 кБ RAM памяти, периферийные БИС I-8255 и I-8279, страница 6

MODE EQU 00H       ; Установка режима работы индикатора на 16 символов и режима работы клавиатуры с блокировкой ввода при нажатии нескольких клавиш

CLOCK EQU 3EH     ; Команда установки значения делителя частоты равным 30

INTM EQU 08H        ; Маска прерываний с разрешением прерываний RST 5.5, 6.5, 7.5

ORG 1000H               ; Определение начального адреса программы

START: MVI A,CLOCK       ; Загрузка в рег. А команды установки значения делителя частоты

            OUT C8279                ; Вывод содержимого регистра управления I-8279(КР580ВВ79)

            MVI A, MODE          ; Загрузка в рег. А команды режима

            OUT C8279                ; Вывод команды для I-8279(КР580ВВ79)

            MVI A,INTM             ; Загрузка в рег. А маски прерываний

SIM                            ; Установка маски прерываний, снимающий запрет для прерываний RST 5.5, 6.5, 7.5

EI                                ; Разрешение прерываний

RET                            ; Возврат к основной программе

END START

Программа обработки запросов на  прерывания от устройства I-8279(КР580ВВ79).

По этой программе производится считывание символа из устройства I-8279(КР580ВВ79) и преобразование его в шестнадцатеричную цифру. Затем символ выдается на индикатор. Программа работает в любом режиме функционирования индикатора и клавиатуры. Для хранения символа в шестнадцатеричном коде используется только младший полубайт.

С8279 EQU 81H        ;  Порт команд устройства I-8279(КР580ВВ79)

            D8279 EQU 80H        ;  Порт данных устройства I-8279(КР580ВВ79)

            RFIFO EQU 40H       ;  Команда чтения из ОЗУ типа FIFO

            ORG 2CH                   ;  Вектор прерывания RST 5.5

START: PUSH PSW             ; Сохранение содержимого регистра

            PUSH H                      ;

            PUSH B                      ;

            MVI A,RFIFO            ; Загрузка в рег. А команды “чтение” из ОЗУ типа FIFO

            OUT C8279                ; Вывод команды в устройство I-8279(КР580ВВ79)

            IN D8279                    ; Ввод из ОЗУ типа FIFO

            ANI OFH                    ; Очистка старшего полубайта

            MVI B,00H                ; Очистка регистра B

            MOV C,A                   ; Пересылка знака в регистр C

            LXI H,TABLE           ; Загрузка в HL базового адреса таблицы

            DAD B                       ; Прибавление смещения к базовому адресу

            MOV A,M                  ; Загрузка содержимого элемента таблицы в A

            CMA                           ; Инвертирование содержимого аккумулятора

            OUT D8279                ; Вывод на устройство I-8279(КР580ВВ79)

            POP B                         ; Восстановление содержимого регистров

            POP H                         ;

            POP PSW                   ;

            EI                                ; Разрешение прерываний

            RET                            ; Возврат в основную программу

            ORG 3000H               ; Начальный адрес таблицы

TABLE: DB 00111111B       ; Нуль

            DB 00000110B          ; Один

            DB 01011011B          ; Два

            DB 01001111B          ; Три

            DB 01100110B          ; Четыре

            DB 01101101B          ; Пять

            DB 01111101B          ; Шесть

            DB 00000111B          ; Семь

            DB 01111111B          ; Восемь

            DB 01101111B          ; Девять

            DB 00110111B          ; ‘A’

            DB 01111100B          ; ‘B’

            DB 01011000B          ; ‘C’

            DB 01011111B          ; ‘D’

            DB 01111001B          ; ‘E’

            DB 01110001B          ; ‘F’

            END START

Программа обработки прерываний от устройства I-8279(КР580ВВ79) в режиме сканирования сенсорной матрицы.

Обеспечивает считывание полной сенсорной матрицы и помещение ее в буфер памяти, начиная с определенного адреса.

С8279 EQU 81H        ;  Порт команд устройства I-8279(КР580ВВ79)