Мышь PS/2 — специализированный интерфейс для подключения указывающего устройства (мыши, трекбола и т.д.) с использованием разъёма mini-DIN-6. Впервые был представлен в компьютере IBM PS/2, благодаря чему и получил своё название.

Мышь Logitech с колесом прокрутки

История

Изначально для PC-совместимых компьютеров использовались мыши двух типов: PC-Mouse от Mouse Systems[en] и Microsoft Mouse[en]. Оба этих типа мыши подключались по протоколу RS-232 и были несовместимы друг с другом. Из этого следовали серьёзные недостатки: 1) мышь занимала Com-порт, количество которых было ограничено — обычно только два; 2) драйвер мыши монопольно использовал линии прерывания IRQ3 или IRQ4; 3) не существовало способа автоматического распознавания и конфигурации подключенной мыши, поэтому пользователю предстояло самостоятельно указывать, какого типа мышь подключена и в какой порт[1].

В 1987 году компания IBM выпустила компьютер PS/2, в котором для клавиатуры и мыши были зарезервированы специальные разъёмы. Изначально новый стандарт не пользовался популярностью. Массово новые разъёмы для мыши стали устанавливаться только в конце 1990-х, с распространением стандарта ATX, который предусматривал специальное окно для размещения разъёмов разных типов. Однако в тот же период появился стандарт USB HID, позволявший подключать мышь в новый универсальный разъём USB. Долгое время два этих стандарта сосуществовали вместе, многие мыши могли работать через оба протокола[2]. Однако постепенно стандарт USB HID вытеснил PS/2.

Принцип работы

Так же как и в клавиатуре, в мыши используется четырёхпроводное подключение: по двум проводам подаётся питание, один провод синхронизации и один — данных. На физическом уровне протокол аналогичен протоколу клавиатуры: он полудуплексный, включает стартовый бит, 8 бит данных и бит чётности, переключение направления реализуется специальной посылкой в синхросигнале.

Мышь может работать в трёх режимах: потоковом, режиме опроса и диагностическом[3]. В диагностическом режиме мышь сигнализирует о своей исправности, возвращая поступившие на вход данные. Основной режим работы — потоковый, в нём мышь передаёт посылку о любом изменении своего состояния: перемещении, нажатии любой кнопки, повороте колеса, но не чаще, чем задано установкой частоты опроса. Ранние мыши, в частности оригинальная мышь IBM посылали на компьютер 3 байта данных. Позже компания Microsoft в своей мыши IntelliMouse[en] расширила формат посылки до четырёх байт, и он принял следующий вид:

Бит 7Бит 6Бит5Бит 4Бит 3Бит 2Бит 1Бит 0
Переполнение YПереполнение XНаправление YНаправление XНе используетсяСредняя кнопкаПравая кнопкаЛевая кнопка
Перемещение X
Перемещение Y
Не используетсяНе используется5-я кнопка4-я кнопкаНаправление
колеса
Вращение колеса

С появлением тачпадов, последние также часто подключают по протоколу PS/2, но для реализации мультитача используются собственные расширения протокола.

Работа на уровне материнской платы

Для подключения мыши типа PS/2 используется разъём Mini-DIN-6, аналогичный разъёму для клавиатуры, с таким же назначением контактов[3]. Автоматического определения, в какой из разъёмов подключена мышь, а в какой — клавиатура как правило не предусмотрено, один из разъёмов позволяет подключить только клавиатуру, а другой — только мышь, чтобы их различать, они окрашиваются в разный цвет и маркируются пиктограммой. Подключение и отключение предполагается только при отключенном питании, защита от возможных бросков тока при коммутации — на усмотрение изготовителей контроллеров. Многие версии материнских плат определяют наличие мыши только в момент включения питания. Сам контроллер как правило совмещён с контроллером клавиатуры, хотя до широкого распространения стандарта ATX существовали контроллеры мыши, выполненные в виде платы расширения[3].

Со стороны процессора используются те же самые порты 60h и 64h, что и для клавиатуры, однако движение мыши вызывает аппаратное прерывание IRQ12. Также в отличие от клавиатуры, посылки от мыши передаются в буфер напрямую, без преобразований. На уровне BIOS поддержка мыши заключается только в её инициализации при включении питания, непосредственно работа с мышью должна быть реализована в виде драйвера на уровне операционной системы[3].

Альтернативы PS/2 для тачпадов

На замену устаревшего протокола PS/2, который не поддерживает более двух синхронных прикосновений (мультитач) и ограничен в разрешении устройств, в ряде встроенных применений (преимущественно с тачпадами) предложены более современные альтернативы. В частности для взаимодействия с устройствами synaptics и libinput применяются протоколы RMI (от англ. Register Mapped Interface). Данные протоколы работают поверх встроенных шин I²C, SMBus или SPI и реализованы в нескольких версиях: RMI3 (с 2007 года)[4] и RMI4 (2010-е)[5][6][7].

Примечания

Литература

  • Михаил Гук. Глава 11. Устройства ввода-вывода и их интерфейсы. 11.2 Манипуляторы-указатели — мышь, трекбол. Мышь PS/2 // Аппаратные средства IBM PC. — 3-е. — СПб.: Питер, 2006. — 1072 с. — 5000 экз. — ISBN 5-469-01182-8.
  • В.А. Павлов. Система ввода-вывода ПК. Подсистемы клавиатуры и манипуляторов типа мышь и джойстик. — Саров: Кафедра вычислительной и информационной техники Саровского государственного физико-технического института, 2008.
  • N. Mathivanan. Microprocessors, PC Hardware and Interfacing (англ.). — New Delhi: PHI Learning, 2006. — P. 316−317.
  • Keyboard and Auxillary Device Controller // IBM Personal System/2 Hardware Interface Technical Reference. — International Business Machines Corporation, 1988. — (IBM Personal Computer Hardware Reference Library).

Ссылки

🔥 Top keywords: Заглавная страницаЯндексДуров, Павел ВалерьевичСлужебная:ПоискYouTubeЛунин, Андрей АлексеевичПодносова, Ирина ЛеонидовнаВКонтактеФоллаут (телесериал)WildberriesTelegramРеал Мадрид (футбольный клуб)Богуславская, Зоя БорисовнаДуров, Валерий СемёновичРоссияXVideosСписок умерших в 2024 годуЧикатило, Андрей РомановичFallout (серия игр)Список игроков НХЛ, забросивших 500 и более шайбПопков, Михаил ВикторовичOzon17 апреляИльин, Иван АлександровичMail.ruСёгун (мини-сериал, 2024)Слово пацана. Кровь на асфальтеПутин, Владимир ВладимировичЛига чемпионов УЕФАГагарина, Елена ЮрьевнаБишимбаев, Куандык ВалихановичЛига чемпионов УЕФА 2023/2024Турнир претендентов по шахматам 2024Манчестер СитиMGM-140 ATACMSРоссийский миротворческий контингент в Нагорном КарабахеЗагоризонтный радиолокаторПинапВодительское удостоверение в Российской Федерации