Аппаратные интерфейсы ПК

Последовательные мыши — MS Mouse и PC Mouse


Serial Mouse — мышь с последовательным интерфейсом, подключаемая через 9- или 25-контактный разъем СОМ-порта (табл. 8.2). Эта мышь имеет встроен­ный микроконтроллер, который обрабатывает сигналы от координатных датчи­ков и кнопок. Каждое событие — перемещение мыши или нажатие-отпускание кнопки кодируется двоичной посылкой по интерфейсу RS-232C. Для передачи ин­формации применяется асинхронная передача, а двуполярное питание, требуемое по протоколу RS-232, обеспечивается от управляющих линий интерфейса. Недо­статком Serial Mouse является то, что она занимает СОМ-порт и требует моно­польного владения его штатной линии прерывания (IRQ4 для СОМ1 и IRQ3 для COM2). Конечно, то, что для использования мыши порту СОМ1 требуется имен­но прерывание IRQ4, является недостатком не самой мыши, а ее программного драйвера, но для пользователя, не увлекающегося написанием «мышиных» драй­веров, важен только факт этого ограничения. Две основные разновидности — MS Mouse (Microsoft Mouse) и PC Mouse (Mouse Systems Mouse) — требуют раз-

318________ Глава 8. Специализированные интерфейсы периферийных устройств

ных драйверов, многие мыши имеют переключатель MS/PC. Эти два типа «мы­шей» при одинаковой скорости 1200 бит/с, одном стоп-бите и отсутствии конт­роля паритета используют различные форматы посылок.

¦     MS Mouse: 1 бит данных, трехбайтный пакет (в «классическом» варианте), по­ложительным значениям соответствует перемещение по координате X вправо, а по координате Y вниз. Для трехкнопочных мышей добавляется четвертый байт, передаваемый только при изменении состояния средней кнопки. Для 3D-мыши четвертый байт имеет иное назначение.

¦     PC Mouse: 8 бит данных, пятибайтный пакет, положительным значениям соот­ветствует перемещение по координате X вправо, а по координате Y вверх.

Из рассмотрения данных форматов становятся понятными беспорядочные пере­мещения указателя мыши на экране при несоответствии драйвера типу мыши.
Несовместимость может проявляться и более неприятным образом: к примеру, ОС Windows 95 при загрузке (и установке) вообще не воспринимает мышь, работа­ющую в режиме PC Mouse (ей «не нравится» идентификатор, сообщаемый мышью при инициализации). При загруженной ОС переключение режима приводит «только» к непредсказуемым прыжкам указателя мыши и ложным срабатывани­ям кнопок.

Таблица 8.2. Разъемы Serial Mouse

Сигнал                   Контакт DB9       Контакт DB25       ЦепьСОМ-порта



Data

2

3

RxD

GND

5

7

GND

+V(питание)

7,(4)

4, (20)

RTS, (DTR)

-V (питание)

3

2

TxD

Системная поддержка последовательной мыши осуществляется только на уровне ОС (сервисы вызываются через Int ЗЗп), драйвер мыши — загружаемый или встроенный в ОС. BIOS мышь не поддерживает, даже если и пользуется ею для навигации в BIOS Setup. Еще раз подчеркнем, что для работы мыши обязательно требуется линия аппаратного прерывания — IRQ4 или IRQ3 для последовательных мышей на портах СОМ1 или COM2 соответственно.


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