Использование СОМ-портов
2.5.1. Использование СОМ-портов
СОМ-порты чаще всего применяют для подключения манипуляторов (мышь, трекбол). В этом случае порт исполь- зуется в режиме последовательного ввода; питание произво- дится от интерфейса. Мышь с последовательным интерфей- сом - Serial Mouse -может подключаться к любому исправному порту. Для согласования разъемов порта и мыши возможно при- менение переходника DB-9S-DB-25P или DB-25S-DB-9P. Для мыши требуется прерывание, для порта СОМ1 - IRQ4, для COM2 - IRQ3. Жесткая привязка номера IRQ к номеру порта обусловлена свойствами драйверов. Каждое событие - пере- мещение мыши или нажатие-отпускание кнопки - кодируется двоичной посылкой по интерфейсу RS-232C. Применяется асин- хронная передача; двуполярное питание обеспечивается от уп- равляющих линий интерфейса (табл. 2.3).
Сигнал | Контакты | ||||
DB-9 | DB-25
| ||||
Data | 2 | 3 | |||
GND | 5 | 7 | |||
+V (питание) | 4,7 | 4,20 | |||
-V (питание) | 3 | 9 |
Две разновидности 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. Отсюда становятся понятными беспорядочные перемещения курсора на экране при несоответствии драйвера типу мыши.
Биты |
D6 |
D5 |
D4 |
D3 |
02 |
01 |
00 |
1-й байт |
1 |
LB |
RB |
Y7 |
Y6 |
Х7 |
Х6 |
2-й байт |
0 |
Х5 |
Х4 |
ХЗ |
Х2 |
Х1 |
хо |
3-й байт |
0 |
Y5 |
Y4 |
Y3 |
Y2 |
Y1 |
YO |
Биты |
07 |
Об |
05 |
04 |
03 |
02 |
01 |
DO |
1-й байт |
1 |
о |
о |
0 |
о |
LB |
MB |
RB |
2-й байт |
Х7 |
Х6 |
Х5 |
Х4 |
ХЗ |
Х2 |
Х1 |
ХО |
3-й байт |
Y7 |
Y6 |
Y5 |
Y4 |
Y3 |
Y2 |
Y1 |
YO |
4-й байт |
Совпадает со 2-м байтом |
|||||||
5-й байт |
Совпадает с 3-м байтом |
разъемов (по количеству контактов); возможно применение переходников 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). Основные характеристики интерфейсов следу- ющие:
т IrDA SIR (Slow Infra Red), HP-SIR - 9,6-115,2 Кбит/с;
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 с воз- можностью прямого управления шиной.
Инфракрасные излучатели не создают помех в радиочастот- ном диапазоне и обеспечивают конфиденциальность пере- дачи. ИК-лучи не проходят через стены, поэтому зона при- ема ограничивается небольшим легко контролируемым пространством. Инфракрасная технология привлекательна для связи портативных компьютеров со стационарными ком- пьютерами или док-станциями. Инфракрасный интерфейс имеют некоторые модели принтеров.