Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Последовательные мыши — 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) — требуют раз-

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

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

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

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

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

Мышь PS/2

PS/2-Mouse — мышь, появившаяся с компьютерами PS/2. Ее интерфейс и разъ­ем 6-pin mini-DIN аналогичен клавиатурному (см. рис. 8.1) и, как правило, реали­зуется тем же контроллером клавиатуры 8242 (см. п. 8.1.2). Адаптер и разъем PS/ 2-Mouse устанавливаются на многих современных системных платах (рис. 8.3). Контроллер мыши PS/2 может быть также на карте расширения (ISA) и занимать дополнительные адреса в пространстве ввода-вывода. С мышью PS/2 связь дву­сторонняя: процессор может посылать контроллеру 8242 специальные команды,

но, в отличие от интерфейса клавиатуры, перед записью в порт 60h каждого «мыши­ного» байта (и команды, и ее параметра) в порт 64h должен записываться код D4h.

Рис. 8.3. Разъем PS/2-Mouse

Мышь может работать в одном из двух режимов. В потоковом режиме (stream mode) мышь посылает данные по любому изменению состояния; в режиме опроса (remote mode) мышь передает данные только по запросу процессора. Есть еще диагностический режим (wrap mode), в котором мышь возвращает эхом данные, посылаемые ей контроллером. По приему пакета от мыши контроллер устанавли­вает флаг Mouse_OBF и вырабатывает прерывание IRQ12, если оно не запрещено командным байтом 8242.

Устройства-указатели с интерфейсом PS/2 (мышь PS/2) имеют поддержку BIOS, обеспечивающую настройку параметров мыши (посылку вышеперечисленных команд). Собственно драйвер мыши (обработчик прерывания по вектору 74h от запроса IRQ12), обрабатывающий ее информационные посылки, входит лишь в состав ОС или загружается отдельно. Поддержка мыши вызывается через BIOS Int 15h с кодами функций C200-C209h.

Мышь Bus Mouse

Bus Mouse (шинная мышь) — вариант, применявшийся в первых мышах. Здесь мышь содержит только датчики и кнопки, а обработка их сигналов производит­ся на специализированной плате адаптера (обычно ISA). Кабель 9-проводный, разъем специальный (рис. 8.4), хотя на первый взгляд и напоминающий разъем PS/2-Mouse. Главный недостаток такой системы заключается в том, что адаптер занимает слот системной шины, адреса ввода-вывода и линию запроса прерыва­ния. Иногда встречались мультипортовые карты ISA (COM-, LPT- и GAME-nop-ты), на которых установлен и адаптер Bus Mouse. Поскольку компания Microsoft одна из первых выпустила такую мышь, снабдив ее своим логотипом, с понятием Bus Mouse иногда отождествляют и MS-Mouse, хотя последние могут иметь лю­бой из трех видов интерфейсов.

 

Рис. 8.4. Разъем Bus Mouse

 



Поделиться:


Последнее изменение этой страницы: 2016-09-19; просмотров: 548; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.75.27 (0.008 с.)