Программирование модемов

Регистр данных



Регистр данных

Регистр данных расположен непосредственно по базовому адресу порта RS-232-C и используется для обмена данными и для задания скорости обмена.

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

В зависимости от состояния старшего бита управляющего регистра (расположенного по адресу base_adr + 3, где base_adr соответствует базовому адресу порта RS-232-C) назначение этого регистра может изменяться. Если старший бит равен нулю, регистр используется для записи передаваемых данных. Если же старший бит равен единице, регистр используется для ввода значения младшего байта делителя частоты тактового генератора. Изменяя содержимое делителя, можно изменять скорость передачи данных. Старший байт делителя записывается в регистр управления прерываниями по адресу base_adr + 1.

Зависимость скорости передачи данных от значения делителя частоты представлена в следующей таблице:

Делитель, десятичная формаДелитель, шестнадцатеричная форма Скорость передачи в бодах
1040600h110
768300h150
384180h300
1920C0h600
9660h1200
4830h2400
2418h4800
120Ch9600
66h19200
33h38400
22h57600
11h115200

Как следует из этой таблицы, максимальная скорость обмена информацией, которую можно достичь при использовании асинхронного адаптера, достигает 115200 бод, что примерно соответствует 14 Кбайт в секунду.



Содержание раздела