Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






СОМ-порт






Последовательный интерфейс СОМ-порт (Communication Port — коммуникационный порт) появился в первых моделях IBM PC. Он был реализован на микросхеме асинхронного при­емопередатчика Intel 8250. Порт имел поддержку BIOS (/Л/Т 74/?), однако широко применялось (и применяется) взаи­модействие с портом на уровне регистров. Поэтому во всех PC-совместимых компьютерах для последовательного интерфейса применяют микросхемы приемопередатчиков, совместимые с i8250. В ряде отечественных PC-совместимых (почти) компь­ютеров для последовательного интерфейса применялась мик­росхема КР580ВВ51 — аналог i8251. Однако эта микросхема является универсальным синхронно-асинхронным приемопе­редатчиком (УСАПП или USART — Universal Asynchronous Receiver-Transmitter). Совместимости с PC на уровне регист­ров СОМ-порта такие компьютеры не имеют. Хорошо, если у соответствующих компьютеров имеется «честный» драйвер B/OS INT 14h, а не заглушка, возвращающая состояние модема «всегда готов» и ничего не делающая. Совместимость на уров­не регистров СОМ-порта считается необходимой. Многие раз­работчики коммуникационных пакетов предлагают работу и через B/OS INT 14h, однако на высоких скоростях это неэффек­тивно. Говоря о СОМ-порте PC, по умолчанию будем подра­зумевать совместимость регистровой модели с i8250 и реали­зацию асинхронного интерфейса RS-232C.

2.5.1. Использование СОМ-портов

СОМ-порты чаще всего применяют для подключения манипуляторов (мышь, трекбол). В этом случае порт исполь­зуется в режиме последовательного ввода; питание произво­дится от интерфейса. Мышь с последовательным интерфей­сом — Serial Mouse —может подключаться к любому исправному порту. Для согласования разъемов порта и мыши возможно при­менение переходника DB-9S-DB-25P или DB-25S-DB-9P. Для мыши требуется прерывание, для порта СОМ 1 — IRQ4, для COM2 — IRQ3. Жесткая привязка номера IRQ к номеру порта обусловлена свойствами драйверов. Каждое событие — пере­мещение мыши или нажатие-отпускание кнопки — кодируется двоичной посылкой по интерфейсу RS-232C. Применяется асин­хронная передача; двуполярное питание обеспечивается от уп­равляющих линий интерфейса (табл. 2.3).

Две разновидности Serial Mouse — MS-Mouse и PC-Mouse (Mouse Systems Mouse) — требуют соответствующих драй­веров, многие мыши имеют переключатель MS/PC. Мышь с «чужим» драйвером либо не отзывается, либо «скачет» за­гадочным образом. Эти разновидности используют различ­ные форматы посылок: при одинаковой скорости 1200 бит/с, одном стоп-бите и отсутствии контроля четности Microsoft Mouse использует 7 бит данных, a PC-Mouse — 8 бит. Мышь посылает пакет при каждом изменении состояния — переме­щении, нажатии или отпускании кнопки. Пакет, передавае­мый MS-Mouse, состоит из трех байт (табл. 2.4). PC-Mouse передает 5 байт (табл. 2.5). Здесь LB (Left Buttom), MB (Middle Buttom) и RB (Right Buttom) означают состояние левой, средней и правой кнопок, Х[7: 0] и Y[7: 0] — биты от­носительного перемещения мыши с момента предыдущей посылки по координатам Х и Y. Положительным значениям соответствует перемещение по координате Х вправо, а по координате Y вниз для MS-Mouse и вверх для PC-Mouse. Отсюда становятся понятными беспорядочные перемещения курсора на экране при несоответствии драйвера типу мыши.

Для подключения внешних модемов используется полный (9-проводный) кабель АПД-АКД, схема которого приведена на рис. 2.7. Этот же кабель используется для согласования разъемов (по количеству контактов); возможно применение переходников 9-25, предназначенных для мышей. Для ра­боты коммуникационного ПО обычно требуется использо­вание прерываний, но здесь есть свобода выбора номера (ад­реса) порта и линии прерывания. Если предполагается работа на скоростях 9600 бит/с и выше, то СОМ-порт должен быть реализован на микросхеме UART 16550A или совместимой. Возможности работы с использованием FIFO-буферов и об­мена по каналам DMA зависят от коммуникационного ПО.

Для связи двух компьютеров, удаленных друг от друга на небольшое расстояние, используют и непосредственное со­единение их СОМ-портов нуль-модемным кабелем (рис. 2.8). Использование программ типа Norton Commander или Interink MS-DOS позволяет обмениваться файлами со ско­ростью до 115, 2 Кбит/с без применения аппаратных преры­ваний. Это же соединение может использоваться и сетевым пакетом Lantastic, предоставляющим более развитый сервис.

Подключение принтеров и плоттеров к СОМ-порту требу­ет применения кабеля, соответствующего выбранному про­токолу управления потоком: программному XON/XOFF или аппаратному RTS/CTS. Схемы кабелей приведены на рис. 2.10 и 2.12. Аппаратный протокол предпочтительнее. Прерыва­ния при выводе средствами DOS (командами COPY или PRINT) не используются.

СОМ-порт используется для подключения электронных ключей (Security Devices), предназначенных для защиты от нелицензированного использования ПО. Эти устройства мо­гут быть как «прозрачными», позволяя воспользоваться тем же портом для подключения периферии, так и полностью занимающими порт.

СОМ-порт при наличии соответствующей программной под­держки позволяет превратить PC в терминал, эмулируя си­стему команд распространенных специализированных тер­миналов (VT-52, VT-100 и т. д.). Простейший терминал получается, если замкнуть друг на друга функции BIOS об­служивания СОМ-порта (INT 14h), телетайпного вывода (/Л/Т 10h) и клавиатурного ввода (INT 16h). Однако такой тер­минал будет работать лишь на малых скоростях обмена (если, конечно, его делать не на Pentium), поскольку функции BIOS хоть и универсальны, но не слишком быстры.

Интерфейс RS-232C широко распространен в различных ПУ и терминалах. СОМ-порт может использоваться и как дву­направленный интерфейс, у которого имеется 3 программно-управляемые выходные линии и 4 программно-читаемые входные линии с двуполярными сигналами. Их использова­ние определяется разработчиком. Существует, например, схе­ма однобитного широтно-импульсного преобразователя, по­зволяющего записывать звуковой сигнал на диск PC, используя входную линию СОМ-порта. Воспроизведение этой записи через обычный динамик PC позволяет передать речь. В настоящее время, когда звуковая карта стала почти обязательным устройством PC, это не впечатляет, но когда-то такое решение было интересным.

СОМ-порт используют для беспроводных коммуникаций с применением излучателей и приемников инфракрасного диапазона — IR (Infra Red) Connection. Этот интерфейс по­зволяет осуществлять связь между парой устройств, уда­ленных на расстояние, достигающее нескольких метров. Раз­личают инфракрасные системы низкой (до 115, 2 Кбит/с), средней (1, 152 Мбит/с) и высокой (4 Мбит/с) скорости. Низкоскоростные системы служат для обмена короткими сообщениями, высокоскоростные — для обмена файлами между компьютерами, подключения к компьютерной сети, вывода на принтер, проекционный аппарат и т. п. Ожида­ются более высокие скорости обмена, которые позволят передавать «живое видео». В 1993 году создана ассоциация разработчиков систем инфракрасной передачи данных IrDA (Infrared Data Association), призванная обеспечить совмес­тимость оборудования от различных производителей. В настоящее время действует стандарт IrDA 1.1. Имеются соб­ственные системы фирм Hewlett Packard — HP-SIR (Hewlett Packard Slow Infra Red) - и Sharp - ASK (Amplitude Shifted Keyed IR). Основные характеристики интерфейсов следу­ющие:

a IrDA SIR (Slow Infra Red), HP-SIR - 9, 6-115, 2 Кбит/с;

is IrDA MIR (Middle Infra Red) - 1, 2 Мбит/с;» IrDA FIR (Fast Infra Red) - 4 Мбит/с;

ж Sharp ASK - 9, 6-57, 6 Кбит/с.

На скоростях до 115 200 бит/с для инфракрасной связи ис­пользуются UART, совместимые с 16450/16550. В современ­ных системных платах на использование инфракрасной связи может конфигурироваться порт COM2. В этом случае на пе­реднюю панель компьютера устанавливается внешний при­емопередатчик — «инфракрасный глаз», который подключа­ется к разъему IR-Connector системной платы.

На средних и высоких скоростях обмена применяются спе­циализированные микросхемы, ориентированные на интен­сивный программно-управляемый обмен или DMA с воз­можностью прямого управления шиной.

Инфракрасные излучатели не создают помех в радиочастот­ном диапазоне и обеспечивают конфиденциальность пере­дачи. ИК-лучи не проходят через стены, поэтому зона при­ема ограничивается небольшим легко контролируемым пространством. Инфракрасная технология привлекательна для связи портативных компьютеров со стационарными ком­пьютерами или док-станциями. Инфракрасный интерфейс имеют некоторые модели принтеров.

2.5.2. Микросхемы асинхронных приемопередатчиков

Преобразование параллельного кода в последовательный для передачи и обратное преобразование при приеме данных вы­полняют специализированные микросхемы UART (Universal Asynchronous Receiver-Transmitter — универсальный асинхрон­ный приемопередатчик). Эти же микросхемы формируют и обрабатывают управляющие сигналы интерфейса. СОМ-пор-ты IBM PC XT/AT базируются на микросхемах, совместимых на уровне регистров с UART i8250 - 8250/16450/16550А Это семейство представляет собой усовершенствование начальной модели, направленное на повышение быстродействия, сниже­ние потребляемой мощности и загрузки процессора при ин­тенсивном обмене. Отметим следующее:

« 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 не имеет. Требуется для работы OS/2 с СОМ-портами.

ж 16550 — развитие 16450. Может использовать канал DMA для обмена данными. Имеет FIFO-буфер, но некорректность его работы не позволяет им воспользо­ваться.

я 16550А — имеет работающие 16-байтные FIFO-буферы приема и передачи и возможность использования DMA. Именно этот тип UART должен применяться в AT при интенсивных обменах на скоростях 9600 бит/с и выше. Совместимость с этой микросхемой обеспечивает боль­шинство микросхем контроллеров портов ввода/вывода, входящих в современные чипсеты.

Микросхемы UART 16550А с программной точки зрения представляют собой набор регистров, доступ к которым определяется адресом (смещением адреса регистра относи­тельно базового адреса порта) и значением бита DLAB (бита 7 регистра LCR). В адресном пространстве микросхема зани­мает 8 смежных адресов. Список регистров UART 16550А и способы доступа к ним приведены в табл. 2.6. Микросхе­мы 8250 отличаются отсутствием регистра FCR и всех воз­можностей FIFO и DMA.

* Некоторые биты допускают только чтение. Запись в регистр может привести к сбою протокола.

THR — промежуточный регистр данных передатчика (только для записи). Данные, записанные в регистр, будут пересланы в выходной сдвигающий регистр (когда он будет свободен), из которого поступят на выход при наличии разрешающего сигнала CTS. Бит 0 передается (и принимается) первым. При длине посылки менее 8 бит старшие биты игнорируются.

RBR — буферный регистр принимаемых данных (только для чтения). Данные, принятые входным сдвигающим регистром, помещаются в регистр RBR, откуда они могут быть считаны процессором. Если к моменту окончания приема очередно­го символа предыдущий не был считан из регистра, фикси­руется ошибка переполнения. При длине посылки менее 8 бит старшие биты в регистре имеют нулевое значение.

DLL — регистр младшего байта делителя частоты.

DLM — регистр старшего байта делителя частоты. Делитель

определяется по формуле D=115200/V, где V — скорость пе- редачи, бит/с. Входная частота синхронизации 1, 8432 МГц делится на заданный коэффициент, после чего получается 16-кратная частота передачи данных.

IER — регистр разрешения прерываний. Единичное значение бита разрешает прерывание от соответствующего источника.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.