Assembler - язык неограниченных возможностей


Последовательный порт - часть 2


    биты 7 – 6: 00 — FIFO отсутствует, 11 — FIFO присутствует

    бит 3: тайм-аут FIFO приемника

    биты 2 – 1: тип произошедшего прерывания:

    11 — состояние BREAK или ошибка. Сбрасывается после чтения из 03FDh

    10 — пришли данные. Сбрасывается после чтения из 03F8h

    01 — буфер передачи пуст. Сбрасывается после записи в 03F8h

    00 — изменилось состояние модема. Сбрасывается после чтения из 03FEh

бит 0: 0, если произошло прерывание, 1, если нет

03FAh для записи — регистр управления FIFO (FCR)

    биты 7 – 6: порог срабатывания прерывания о приеме данных

    00 — 1 байт

    01 — 4 байта

    10 — 8 байт

    11 — 16 байт

бит 2 — очистить FIFO приемника

бит 1 — очистить FIFO передатчика

бит 0 — включить режим работы через FIFO

03FBh для чтения и записи — регистр управления линией (LCR)

    бит 7: если 1 — порты 03F8h и 03F9H работают, как делитель частоты порта

    бит 6: состояние BREAK — порт непрерывно посылает нули

    биты 5 – 3: четность:

    ? ? 0 — без четности

    0 0 1 — контроль на четность

    0 1 1 — контроль на нечетность

    1 0 1 — фиксированная четность 1

    1 1 1 — фиксированная четность 0

    ? ? 1 — программная (не аппаратная) четность

бит 2: число стоп-бит:

    0 — 1 стоп-бит

    1 — 2 стоп-бита для 6-, 7-, 8-битных, 1,5 стоп-бита для 5-битных слов

биты 1 – 0: длина слова

    00 — 5 бит

    01 — 6 бит

    10 — 7 бит

    11 — 8 бит

03FBH для чтения и записи — регистр управления модемом (MCR)