♦ Бит 3 — IE (Interrupt Enable) — разрешение прерываний с помощью внешнего выхода OUT2; в режиме диагностики поступает на вход MSR.7:

 • 0 — прерывания запрещены;

 • 1 — прерывания разрешены.

♦ Бит 2 — OUT1C (OUT1 Bit Control) — управление выходным сигналом 1 (не используется); в режиме диагностики поступает на вход MSR.6.

♦ Бит 1 — RTSC (Request To Send Control) — управление выходом RTS; в режиме диагностики поступает на вход MSR.4:

 • 0 — активен (-V);

 • 1 — пассивен (+V).

♦ Бит 0 — DTRC (Data Terminal Ready Control) — управление выходом DTR; в режиме диагностики поступает на вход MSR.5:

 • 0 — активен (-V);

 • 1 — пассивен (+V).

LSRрегистр состояния линии (точнее, состояния приемопередатчика). Ниже описано назначение бит регистра LSR.

♦ Бит 7 — FIFOE (FIFO Error Status) — ошибка принятых данных в режиме FIFO (буфер содержит хотя бы один символ, принятый с ошибкой формата, паритета или обрывом). В не FIFO-режиме всегда 0.

♦ Бит 6 — TEMPT (Transmitter Empty Status) — регистр передатчика пуст (нет данных для передачи ни в сдвиговом регистре, ни в буферных регистрах THR или FIFO).

♦ Бит 5 — THRE (Transmitter Holding Register Empty) — регистр передатчика готов принять байт для передачи. В режиме FIFO указывает на отсутствие символов в FIFO-буфере передачи. Может являться источником прерывания.

♦ Бит 4 — BD (Break Detected) — индикатор обрыва линии (вход приемника находится в состоянии 0 не менее чем время посылки символа).

♦ Бит 3 — FE (Framing Error) — ошибка кадра (неверный стоп-бит).

♦ Бит 2 — РЕ (Parity Error) — ошибка контрольного бита (паритета или фиксированного).

♦ Бит 1 — ОЕ (Overrun Error) — переполнение (потеря символа). Если прием очередного символа начинается до того, как предыдущий выгружен из сдвигающего регистра в буферный регистр или в регистр FIFO, прежний символ в сдвигающем регистре теряется.

♦ Бит 0 — DR (Receiver Data Ready) — принятые данные готовы (в DHR или FIFO- буфере). Сброс — чтением приемника.

Индикаторы ошибок — биты [4:1] — сбрасываются после чтения регистра LSR. В режиме FIFO признаки ошибок хранятся в FIFO-буфере вместе с каждым символом. В регистре они устанавливаются (и вызывают прерывание) в тот момент, когда символ, принятый с ошибкой, находится на вершине FIFO (первый в очереди на считывание). В случае обрыва линии в FIFO заносится только один «обрывной» символ, и UART ждет восстановления и последующего старт-бита.

MSRрегистр состояния модема. Ниже описано назначение бит регистра MSR:

♦ Бит 7 — DCD (Data Carrier Detect) — состояние линии DCD:

 • 0 — активна (-V);

 • 1 — пассивна (+V).

♦ Бит 6 — RI (Ring Indicator) — состояние линии RI:

 • 0 — активна (-V);

 • 1 — пассивна (+V).

♦ Бит 5 — DSR (Data Set Ready) — состояние линии DSR:

 • 0 — активна (-V);

 • 1 — пассивна (+V).

♦ Бит 4 — CTS (Clear To Send) — состояние линии CTS:

 • 0 — активна (-V);

 • 1 — пассивна (+V).

♦ Бит 3 — DDCD (Delta Data Carrier Detect) — изменение состояния DCD.

♦ Бит 2 — ТЕRI (Trailing Edge Of Ring Indicator) — спад огибающей RI (окончание звонка).

♦ Бит 1 — DDSR (Delta Data Set Ready) — изменение состояния DSR.

♦ Бит 0 — DCTS (Delta Clear To Send) — изменение состояния CTS.

Признаки изменения (биты [3:0]) сбрасываются по чтению регистра.

SCRрабочий регистр (8 бит), на работу UART не влияет, предназначен для временного хранения данных (в 8250 отсутствует).

В диагностическом режиме (при LME=1) внутри UART организуется внутренняя «заглушка»:

♦ выход передатчика переводится в состояние логической единицы;

♦ вход приемника отключается;

♦ выход сдвигающего регистра передатчика логически соединяется со входом приемника;

♦ входы DSR, CIS, RI и DCD отключаются от входных линий и внутренне управляются битами DTRC, RISC, OUT1C, IE;

♦ выходы управления модемом переводятся в пассивное состояние (логический ноль).

Переданные данные в последовательном виде немедленно принимаются, что позволяет проверять внутренний канал данных порта (включая сдвигающие регистры) и отработку прерываний, а также определять скорость работы UART.

<p>2.6. Системная поддержка СОМ-портов</p>

СОМ-порты поддерживаются сервисом BIOS Int 14h, который обеспечивает следующие функции:

♦ инициализация (установка скорости обмена и формата посылок; запрет источников прерываний) — на сигналы DTR и RTS влияния не оказывает (после аппаратного сброса они пассивны);

♦ вывод символа — активируются сигналы DTR и RTS, и после освобождения регистра THR в него помещается выводимый символ;

♦ ввод символа — активируется только сигнал DTR (RTS переходит в пассивное состояние), и ожидается готовность принятых данных;

♦ опрос состояния модема и линии (чтение регистров MSR и LSR).

Аппаратные прерывания не используются, ожидание готовности ввода и вывода ограничивается по тайм-ауту. Готовность можно быстро проверить опросом состояния.

Перейти на страницу:

Все книги серии Наиболее полное и подробное руководство

Похожие книги