Аппаратная реализация
Обычно компьютер оснащен одним или двумя портами последовательной передачи данных. Эти порты расположены либо на системной плате, либо на отдельной плате, вставляемой в слоты расширения системной платы.
Бывают специальные платы, содержащие четыре или восемь портов последовательной передачи данных. Их часто используют для подключения нескольких модемов и факс-модемов к одному компьютеру.
Сердцем последовательного асинхронного адаптера служит микросхема универсального асинхронного приемопередатчика (UART - Universal Asynchronous Receiver Transmitter). Вы можете встретить несколько разновидностей этой микросхемы - Intel 8250, 16450, 16550, 16550A.
Микросхема UART 8250 в ее исходном виде использовалась только в старых моделях компьютеров IBM PC и IBM PC/XT. Современные микросхемы - UART 16450, 16550 и 16550A, изготовленные по новой технологии, позволяют достичь более высокой скорости обмена данными, а также обладают расширенными аппаратными возможностями.
Опишем основные возможности различных микросхем UART:
Эта микросхема позволяет использования каналов прямого доступа. 16550A, как правило, используется в современных компьютерах. Заметим, что, если вы желаете работать на скоростях больших, чем 9600 бит/с, вам желательно использовать именно эту микросхему
Внешне каждый COM-порт асинхронного последовательного адаптера представлен собственным разъемом. Существует два стандарта на разъемы COM-порта: это DB25 и DB9. Первый разъем имеет 25, а второй 9 выводов. Несмотря на то, что разъем DB25 содержит в два с половиной раза больше выводов, чем DB9, они передают одинаковые сигналы. При необходимости можно приобрести переходник между разъемами DB25 и DB9.
Рис. 1.14. Разъемы последовательных портов
Приведем разводку разъема DB25 со стороны последовательного асинхронного адаптера:
Номер контакта | Назначение контакта | Вход или выход |
1 | Защитное заземление (Frame Ground, FG) | - |
2 | Передаваемые данные (Transmitted Data, TD) | Выход |
3 | Принимаемые данные (Received Data, RD) | Вход |
4 | Запрос для передачи (Request to send, RTS) | Выход |
5 | Сброс для передачи (Clear to Send, CTS) | Вход |
6 | Готовность данных (Data Set Ready, DSR) | Вход |
7 | Сигнальное заземление (Signal Ground, SG) | - |
8 | Детектор принимаемого с линии сигнала (Data Carrier Detect, DCD). Иногда сигнал DCD обозначают как CD (Carrier Detect) или RLSD (Receive Line Signal Detect) | Вход |
9-19 | Не используются | |
20 | Готовность выходных данных (Data Terminal Ready, DTR) | Выход |
21 | Не используется | |
22 | Индикатор вызова (Ring Indicator, RI) | Вход |
23-25 | Не используются |
Номер контакта | Назначение контакта | Вход или выход |
1 | Детектор принимаемого с линии сигнала (Data Carrier Detect, DCD). Иногда сигнал DCD обозначают как CD или RLSD | Вход |
2 | Принимаемые данные (Received Data, RD) | Вход |
3 | Передаваемые данные (Transmitted Data, TD) | Выход |
4 | Готовность выходных данных (Data Terminal Ready, DTR) | Выход |
5 | Сигнальное заземление (Signal Ground, SG) | - |
6 | Готовность данных (Data Set Ready, DSR) | Вход |
7 | Запрос для передачи (Request to send, RTS) | Выход |
8 | Сброс для передачи (Clear to Send, CTS) | Вход |
9 | Индикатор вызова (Ring Indicator, RI) | Вход |