Железо ПК
Для начинающих пользователейДля любопытных пользователей
Для продвинутых пользователей
Трюки
Базовые операции с системной платойНастройка системной платы
Процессор
Память
Жесткие диски
Производительность жестких дисков
Видео
Устройства ввода/вывода
Загрузка
Настройка нового компьютера
Аппаратные интерфейсы ПК
ВведениеПараллельный интерфейс— LPT-порт
Последовательный интерфейс — СОМ-порт
Беспроводные интерфейсы
Последовательные шины USB и FireWire
Шина SCSI
Шины и карты расширения
Интерфейсы электронной памяти
Специализированные интерфейсы периферийных устройств
Интерфейсы устройств хранения
Интерфейсы компьютерных сетей
Вспомогательные последовательные интерфейсы и шины
Архитектурные компоненты IBM PC-совместимого компьютера
Интерфейсы питания, заземление и гальваническая развязка
Последовательный интерфейс — СОМ-порт
Отметим, что:
♦
8250 имеет ошибки (появление ложных прерываний), учтенные в XT BIOS;
♦
8250А — ошибки исправлены, но в результате потеряна совместимость с BIOS;эта микросхема работает в некоторых моделях AT, но непригодна для скорос¬ти 9600 бит/с;
♦
8250В — исправлены ошибки 8250 и 8250А, восстановлена ошибка в прерыва¬ниях — возвращена совместимость с XT BIOS; работает в AT под DOS (кроме скорости 9600 бит/с).
Микросхемы 8250х имеют невысокое быстродействие по обращениям со стороны системной шины. Они не допускают обращения к своим регистрам в смежных шинных циклах процессора — для корректной работы с ними требуется введение программных задержек между обращениями CPU.
В компьютерах класса AT применяют микросхемы UART перечисленных ниже модификаций.
♦
16450 — быстродействующая версия 8250 для AT. Ошибок 8250 и полной сов¬местимости с XT BIOS не имеет.
♦
16550 — развитие 16450. Может использовать канал DMA для обмена данными. Имеет FIFO-буфер, но некорректность его работы не позволяет им воспользо¬ваться.
♦
16550А — имеет работающие 16-байтные FIFO-буферы приема и передачи и
возможность использования DMA. Именно этот тип U ART должен применять¬ ся в AT при интенсивных обменах на скоростях 9600 бит/с и выше. Совмести¬мость с этой микросхемой обеспечивает большинство микросхем контролле¬ров портов ввода-вывода, входящих в современные чипсеты.
Микросхемы UART 16550А с программной точки зрения представляют собой на¬бор регистров, доступ к которым определяется адресом (смещением адреса регист¬ра относительно базового адреса порта) и значением бита DLAB (бита 7 регистра LCR). В адресном пространстве микросхема занимает 8 смежных адресов. Список регистров UART 16550A и способы доступа к ним приведены в табл. 2.4. Микросхе¬мы 8250 отличаются отсутствием регистра FCR и всех возможностей FIFO и DMA.
Таблица 2.4. Регистры UART 16550А
Доступ Регистр Смещение DLAB Имя
Название
Чтение/запись R/W
Oh Oh Oh
0 0 1
THR RBR DLL
Transmit Holding Register Receiver Buffer Register Divisor Latch LSB
WO RO R/W
продолжение-^
64
Глава 2. Последовательный интерфейс — СОМ-порт
Таблица 2.4 (продолжение)
Доступ
Регистр
Чтение/запись R/W
Смещение DLAB Имя Название
1h
1
DIM
Divisor Latch MSB
R/W
1h
0
IER
Interrupt Enable Register
R/W
2h
X
IIR
Interrupt Identification Register
RO
2h
X
FOR
FIFO Control Register
WO
3h
X
LCR
Line Control Register
R/W
4h
X
MCR
Modem Control Register
R/W
5h
X
LSR
Line Status Register
R/W1
6h
X
MSR
Modem Status Register
R/W'
7h
X
SCR
Scratch Pad Register
R/W
1 Некоторые биты допускают только чтение.