НПО Системы Безопасности
(499)340-94-73 График работы:
ПН-ПТ: 10:00-19:00
СБ-ВС: выходной

Главная » Периодика » Безопасность

0 ... 108109110111112113114 ... 159


Базовые адреса последовательного порта

В табл. 10.9 представлены базовые адреса последовательного порта. Таблица 10.9

Базовые адреса последовательного порто

Порт

Базовый адрес

Номер прерывания (вектор)

С0М1

DX03F8

ОхООС

COM2

0х02Р8

ОхООВ

COM3

ОхОЗЕВ

ОхООС

COM4

0х02Е8

ОхООВ

Каждый базовый адрес используется в качестве исходного для адресации восьми регистров контроллера последовательного порта (8250). Номер прерывания представляет собой вектор прерывания. Порт COM4 имеет адреса, конфликтующие с графическим адаптером 8514/А.

Регистры УАПП 8250

УАПП 8250 содержит восемь регистров, которые задаются смещением относительно базовых адресов. Назначение регистров и смещение представлены в табл. 10.10. Спецификация разрядов дана в табл. 10.11-10.17.

Таблица 10.10

Управляющие региары последовательного порто ПК

Смещение от базового адреса

Назначение регистра

Буферный регистр передачика/приемника/защелка младшего байта делителя

Региар разрешения прерывания/защелка ааршего байта делителя

Региар идентификации прерываний

Региар управления линии

Региар управления модемом

Региар соаояния линии

Регистр соаояния модема

Оперативный региар

Скорость передачи данных (Data Speed) определяется загрузкой 16-разрядной величины коэффициента деления в регистр делителя. Для загрузки 1 должна быть записана в седьмой разряд регистра управления линии. После этого младший байт заносится при записи в буфер порта, а старший - в регистр разрешения прерывании-



Чтобы вычислить текущую скорость передачи данных, нужно частоту 1,8432 МГц разделить на коэффициент деления, умноженный на 16:

Скорость передачи данных = 1,8432 МГц/ (16 х коэффициент деления).

В табл. 10.11 представлены значения коэффициента деления для некоторых стандартных скоростей передачи данных.

Таблица 10.11

Коэффициенты деления для различных стандартных скоростей передачи данных

Скорость передачи данных (бит/с)

Коэффициент деления

0x0417

0x0180

ОхООСО

" 1200

0x0060

2400

0x0030

9600

ОхОООС

19200

0x0006

115200

0x0001

После получения символа устанавливается ряд флагов (включая условия ошибки), которые можно сбросить, только если считать символ в регистре буфера приема (Receive Holding Register). Именно по этой причине логичнее считывать содержимое последовательного порта в начале прикладной программы, что позволяет выяснить статус и очистить буфер.

Для передачи символ загружается в буфер передачи путем записи По базовому адресу. Эта загрузка может происходить, как только сдвиговый регистр завершает отсылку предыдущего символа. Часто бывает, что в начале передачи в сдвиговом регистре ничего нет, поэтому символ загружается в него из буферного регистра мгновенно, освобождая при этом буфер для следующего символа.

УАПП 8250 формирует запросы на прерывание (рис. 10.11), которые компьютер может маскировать. В контроллере для управления прерываниями Используется регистр разрешения прерываний (табл. 10.12), регистр идентификации прерываний (табл. 10.13) И бит 0ut2 регистра управления моде-Ом (табл. 10.15 и рис. 10.11).

Прерывание

Out2

Запрос прерывания

Рис. 10.11

Схема управления запросом прерывания последовательного порта 1ВМ-совмеаимого ПК



Назначение

Не используются, обычно установлены в 0

Запрос прерывания по изменению соаояния линий интерфейса модема ~

Запрос прерывания по изменению состояния буферного региара приемника~~

Запрос прерывания, если буферный регистр пуа

Запрос прерывания по приему символа

Таблица 10.13

Региар идентификации прерываний последовательного порта ПК

Назначение

Не используются, обычно уаановлены в 0

Биты идентис

)икации прерывания (ID)

Приоритет

Тип запроса

Низший

Изменение соаояния линий модема

Третий

Буферный региар передатчика пуст

Второй

Получены данные

Высший

Изменение соаояния линии

Таблица 10.14

Региар управления линии последовательного порто ПК

Назначение

При уаановке в 1 буферный региар передатчика и региар разрешения прерываний используются для загрузки значения коэффициента деления

При уаановке в 1 контроллер 8250 выдает «пробелы» (индикатор оаанова) до тех пор, пока этот бит не будет сброшен

Определение контроля четноаи

Вид контроля

Контроль не осущеавляется

Контроль на нечетноаь

Контроль не осущеавляется

Контроль на четность

Контроль не осущеавляется

Бит четноаи равен 1

Контроль не осущеавляется

Бит четноаи равен 0

Длительноаь аопового бита: 1 - 2 такта, 0 - 1 такт

Разрядноаь данных

Формат -

5 бит

6 бит

7 бит

Вбит J



0 ... 108109110111112113114 ... 159