ВУЗ:
Составители:
Рубрика:
OUT DX,AL ; нены по схеме «монтажное ИЛИ» (рисунок 27).
SUB DX,+4 ; Сбросить флаг RxRDY, если он случайно взвелся,
IN AL,DX ; чтением приемника (исключаем ложный INT).
MOV AL,01 ; Разрешить установление INT
INC DX ; по окончанию приема символа в приемник (то есть,
OUT DX,AL ; по флагу RxRDY).
RET ;
Пример 2 —Составить подпрограмму вывода символа из регистра DL в
порт СОМ1.
Как и в случае с LPТ, прежде, чем вывести символ, надо убедиться
в готовности устройства. В данном случае, эта готовность выражается в
том, что передатчик пуст (TxE=1) или пуст буфер передатчика
(TxRDY=1). В нашем примере устраивает любой вариант.
MOV DX,3FD ; Читаем
M1: IN AL,DX ; регистр состояния линии
AND AL,20 ; и анализируем занятость (RxE=0);
JZ M1 ; если занято, то снова чтение.
ADD DX,+5 ; Подготавливаем адрес передатчика
MOV AL,DL ; и выводим туда
OUT DX,AL ; байт данных из регистра DL.
RET ;
16 Программируемый таймер
Для задания временных интервалов и формирования сигналов с
различными временными параметрами в IBM PC/XT применяется
программируемый таймер 8253, в последующих поколениях —8254.
С точки зрения программиста они идентичны. В состав таймера входят:
буфер шины данных, схема управления вводом-выводом и три
независимых канала, каждый из которых содержит регистр режима,
схему управления каналом, буфер и 16-разрядный счетчик (рисунок 29).
Счетчики декрементирующие (убывающий счет).
Каждый счетчик Сч
i
имеет свой адрес:
Имя
счетчика
А1 А0
Счетчик 0 00
Счетчик 1 01
Счетчик 2 10
РУС
таймера
11
РУС таймера – регистр упровляющего слова 3-х счетчиков:
разбит на 3 РУС. С помощью РУС любой счетчик можно
настроить на 6 режимов.
Каждый счетчик имеет выведенные наружу два входа и один выход:
С
i
—вход счетный по переднему фронту (предельная частота 2,5 МГц);
СЕ
i
—разрешение счета, если СЕ=1;
OUT
i
—выход.
102
OUT DX,AL ; нены по схеме «монтажное ИЛИ» (рисунок 27). SUB DX,+4 ; Сбросить флаг RxRDY, если он случайно взвелся, IN AL,DX ; чтением приемника (исключаем ложный INT). MOV AL,01 ; Разрешить установление INT INC DX ; по окончанию приема символа в приемник (то есть, OUT DX,AL ; по флагу RxRDY). RET ; Пример 2 —Составить подпрограмму вывода символа из регистра DL в порт СОМ1. Как и в случае с LPТ, прежде, чем вывести символ, надо убедиться в готовности устройства. В данном случае, эта готовность выражается в том, что передатчик пуст (TxE=1) или пуст буфер передатчика (TxRDY=1). В нашем примере устраивает любой вариант. MOV DX,3FD ; Читаем M1: IN AL,DX ; регистр состояния линии AND AL,20 ; и анализируем занятость (RxE=0); JZ M1 ; если занято, то снова чтение. ADD DX,+5 ; Подготавливаем адрес передатчика MOV AL,DL ; и выводим туда OUT DX,AL ; байт данных из регистра DL. RET ; 16 Программируемый таймер Для задания временных интервалов и формирования сигналов с различными временными параметрами в IBM PC/XT применяется программируемый таймер 8253, в последующих поколениях —8254. С точки зрения программиста они идентичны. В состав таймера входят: буфер шины данных, схема управления вводом-выводом и три независимых канала, каждый из которых содержит регистр режима, схему управления каналом, буфер и 16-разрядный счетчик (рисунок 29). Счетчики декрементирующие (убывающий счет). Каждый счетчик Счi имеет свой адрес: Имя А1 А0 РУС таймера – регистр упровляющего слова 3-х счетчиков: счетчика разбит на 3 РУС. С помощью РУС любой счетчик можно Счетчик 0 00 настроить на 6 режимов. Счетчик 1 01 Счетчик 2 10 РУС 11 таймера Каждый счетчик имеет выведенные наружу два входа и один выход: Сi —вход счетный по переднему фронту (предельная частота 2,5 МГц); СЕi —разрешение счета, если СЕ=1; OUTi —выход. 102
Страницы
- « первая
- ‹ предыдущая
- …
- 100
- 101
- 102
- 103
- 104
- …
- следующая ›
- последняя »