Что вы должны знать о своем компьютере
bf1271d8

Аппаратная реализация


Обычно компьютер оснащен одним или двумя портами последовательной передачи данных. Эти порты расположены либо на системной плате, либо на отдельной плате, вставляемой в слоты расширения системной платы.

Бывают специальные платы, содержащие четыре или восемь портов последовательной передачи данных. Их часто используют для подключения нескольких модемов и факс-модемов к одному компьютеру.

Сердцем последовательного асинхронного адаптера служит микросхема универсального асинхронного приемопередатчика (UART - Universal Asynchronous Receiver Transmitter). Вы можете встретить несколько разновидностей этой микросхемы - Intel 8250, 16450, 16550, 16550A.

Микросхема UART 8250 в ее исходном виде использовалась только в старых моделях компьютеров IBM PC и IBM PC/XT. Современные микросхемы - UART 16450, 16550 и 16550A, изготовленные по новой технологии, позволяют достичь более высокой скорости обмена данными, а также обладают расширенными аппаратными возможностями.

Опишем основные возможности различных микросхем UART:

  • 8250 (иногда называют 8250-B): Использовалась на первых моделях компьютеров IBM PC и IBM PC/XT
  • 16450 (иногда обозначают как 8250-A): Эта микросхема используется в основном для IBM PC/AT, так как имеет большую производительность. Фактически это микросхема UART 8250, но изготовленная с использованием новой технологии
  • 16550: Практически полностью соответствует UART 16450. Добавлена возможность внутренней буферизации передаваемых и принимаемых данных. Буферы выполнены по схеме FIFO (First In First Out - первый вошел, первым вышел) или, другими словами, в виде очереди. При использовании буферизации можно заметно уменьшить число прерываний, вырабатываемых асинхронным портом. Однако из-за ошибки в микросхеме эту возможность лучше не использовать - можно потерять отдельные символы. В общем случае микросхема 16550 более быстрая, чем 16450. Дополнительно 16550 позволяет использовать режим прямого доступа к памяти
  • 16550A (иногда обозначают как 16550AN) Соответствует 16550, но в ней исправлены ошибки реализации буфера FIFO.
    Эта микросхема позволяет использования каналов прямого доступа. 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 Не используются  
    Теперь приведем разводку разъема DB9 со стороны последовательного асинхронного адаптера:

    Номер контакта Назначение контакта Вход или выход
    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) Вход
    Только два вывода этих разъемов используются для передачи и приема данных. Остальные передают различные вспомогательные и управляющие сигналы. На практике для подсоединения того или иного устройства может понадобиться различное количество сигналов.


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