Главная -> Книги

(0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25) (26) (27) (28) (29) (30) (31) (32) (33) (34) (35) (36) (37) (38) (39) (40) (41) (42) (43) (44) (45) (46) (47) (48) (49) ( 50 ) (51) (52) (53) (54) (55) (56) (57) (58) (59) (60) (61) (62) (63) (64) (65) (66) (67) (68) (69) (70) (71) (72) (73) (74) (75) (76) (77) (78) (79) (80) (81) (82) (83) (84) (85) (86) (87) (88) (89) (90) (91) (92) (93) (94) (95) (96) (97) (98) (99) (100) (101) (102) (103) (104) (105) (106) (107) (108) (109) (110) (111) (112) (113) (114) (115) (116) (117) (118) (119) (120) (121) (122) (123) (124) (50)

/WJ£/J

PCs.

PC2-0

-/А/Г/?д

~f Данныг

DBF,

IBF, - BB

OBF IHTEi IBFi, INTE2 MR

X X 1 X

Группа A

Группа В

Рнс. 4-21. Конфигурация портов А и С режима 2 состояния режима 2 (б)

(а), формат слова

РСо PCs Адаптер

PCis.-,fi рв74,

Прерывание

STRi

AC К

Посимвольный принтер

Не используются

Рис. 4-22. Структурная схема интерфейса адаптера с принтером

Сигналом INTE разрешения прерываний порта А можно управлять установкой и сбросом бита РСе, а порта В - установкой и сбросом бита РСг.

Значения приведенных выше управляющих сигналов становятся доступными микропроцессору при выполнении обычного считывания порта С.

Форматы слов состояния режима 1 для ввода и вывода приведены на рис. 4-20.



в режиме 2 двунаправленной шины, обеспечивающей ввод и вывод данных, может работать только группа А. Порт А используется для передач собственно 8-битных данных, а пять линий порта С выполняют функции квитирования и прерываний. Общая дисциплина квитирования аналогична режиму 1, но имеются отдельные триггеры разрешения прерываний по выводу INTE 1 (управляется установкой и сбросом бита РСб) и по вводу INTE 2 (управляется через бит РС4), Вводимые и выводимые данные фиксируются в регистрах-защелках порта А. На рис. 4-21, а показана подобная конфигурация портов А и С в режиме 2, определяемая приказом IIXXXD2D1D0, где биты D2-0 задают режим группы В (допускаются режимы О и 1). Если адаптер запрограммирован в режиме 2, то при считывании из порта С выдается слово состояния, формат которого приведен на рис. 4-21,6. Значения бит D2-0 зависят от запрограммированного режима группы В.

Как пример использования адаптера в режиме 1 рассмотрим вывод текста в посимвольный принтер по прерываниям. Структурная схема интерфейса показана на рис. 4-22. Код выводимого символа передается через порт А, по линии РСо генерируется L-активный строб сопровождения STROBE, а сигнал ОВР не используется. Сигнал АСК от принтера означает, что он отпечатал символ и готов к приему следующего; по сигналу АСК адаптер инициирует прерывание микропроцессора.

Приказ определения режима должен задать следующую конфигурацию адаптера: порт А - вывод в режиме 1, порт С РСз-о - вывод, порт С РС7-4 - ввод, порт В не используется и программируется на ввод. Следовательно, приказ режима имеет код 10101010 (ААН). В приводимых далее программах сделаны следующие предположения:

выводимый текст хранится в буферной области памяти, и адрес текущего байта находится в паре смежных ячеек с адресом CHAR;

текст заканчивается символом-терминатором *;

при подтверждении микропроцессором прерывания ап-паратно формируется команда RST7, а в ячейках 0038Н - ООЗАН находится команда JMP LPOUT перехода к подпрограмме обслуживания прерываний принтера;

после записи символа в порт А генерируется строб

STROBE;

символические адреса PORT А, PORT С, CWR зависят от схемы интерфейса адаптера;



по адресу POLL находится подпрограмма опроса других периферийных устройств (если они есть), а по адресу ENDT - подпрограмма реакции на окончание выводимого текста.

Ниже приведены подпрограммы инициализации адаптера и обслуживания прерываний принтера:

Метка Код Операнд Комментарий

; Подпрограмма-инициализации адаптера

LHLD

A, OAAH

A, OIH

A, 0C3H

0038H

H, LPOUT

0039H

Приказ конфигурация

адаптера Сброс строба

; Загрузка команды JMP LPOUT в ячейки 0038Н- ; ООЗАН

; Окончание инициализации

; Подпрограмма обслуживания прерываний принтера

LPOUT:

PUSH

Запоминание модифициру-

PUSH

емых регистров

FORT С

Считывание состояния адаптера

Проверка прерывания принтера

POLL

, Опрос других устройств

LHLD

CHAR

Адрес выводимого символа

A, M

Символ текста в аккумуляторе

Текст закончен?

ENDT

Да, переход по адресу ENDT

PORT A

; Вывод символа в порт А

A, ООН

Генерирование сопровож-

; дающего строба

A, OIH CWR

; Продвижение указателя

SHLD

CHAR

; текста

; Восстановление содержи-

; мого регистров

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

; Возврат

4-6. ИНТЕРВАЛЬНЫЙ ТАЙМЕР

В некоторых применениях микро-ЭВМ встречаются такие простые функции управления, как генерация сигналов переменной частоты, формирование временных задержек.



(0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25) (26) (27) (28) (29) (30) (31) (32) (33) (34) (35) (36) (37) (38) (39) (40) (41) (42) (43) (44) (45) (46) (47) (48) (49) ( 50 ) (51) (52) (53) (54) (55) (56) (57) (58) (59) (60) (61) (62) (63) (64) (65) (66) (67) (68) (69) (70) (71) (72) (73) (74) (75) (76) (77) (78) (79) (80) (81) (82) (83) (84) (85) (86) (87) (88) (89) (90) (91) (92) (93) (94) (95) (96) (97) (98) (99) (100) (101) (102) (103) (104) (105) (106) (107) (108) (109) (110) (111) (112) (113) (114) (115) (116) (117) (118) (119) (120) (121) (122) (123) (124)