Модемы и факс-модемы. Программирование для MS-DOS и Windows

Современные микросхемы UART


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

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

         8250 (иногда называют 8250-B): Использовалась на первых моделях компьютеров IBM PC и IBM XT

         16450 (иногда обозначают как 8250-A): Эта микросхема используется в основном для IBM PC/AT, так как имеет большую производительность. Фактически это микросхема UART 8250, но изготовленная с использованием новой технологии. Микросхема UART 16450 дополнена регистром расширения (scratch register), имеющим адрес 3FFh (base_adr + 7). В ней также устранены ошибки в регистре разрешения прерываний и добавлена возможность перевода линии OUT2 во время проведения тестов в высокоимпедансное состояние

         16550: Практически полностью соответствует UART 16450. Добавлена возможность внутренней буферизации передаваемых и принимаемых данных. Буферы выполнены по схеме FIFO (First In First Out - первый вошел, первым вышел) или, другими словами, в виде очереди. При использовании буферизации можно заметно уменьшить число прерываний, вырабатываемых асинхронным портом. Однако из-за ошибки в микросхеме эту возможность лучше не использовать - можно потерять отдельные символы. В общем случае микросхема 16550 более быстрая, чем 16450. Дополнительно 16550 дает возможность использовать несколько каналов прямого доступа (DMA channels)

         16550A (иногда обозначают как 16550AN) Соответствует 16550, но в ней исправлены ошибки реализации буфера FIFO. Эта микросхема дает возможность использования нескольких каналов прямого доступа. 16550A, как правило, используется в компьютерах с процессорами 80386/486 и в компьютерах с RISC-архитектурой. Заметим, что, если вы хотите работать на скоростях больших, чем 9600 бит/с, вам желательно использовать именно эту микросхему.



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