Порт PS/2 — ЭННЕРА — Компьютерная энциклопедия.
Если у вашего устройства нестандартная цветовая маркировка проводов, есть шанс, что здесь вы получите нужную информацию.
Распиновка порта PS/2:
- +DAT (Data) Данные
- обычно не используется
- GND (Ground) Земля, общий
- VCC (+5 V) Питание 5 VDC, 275 mA
- +CLK (Clock) Тактовый сигнал
- обычно не используется
Обратите внимание! Мыши и клавиатуры подключаются к порту PS/2 только при выключенном компьютере. В отличие от USB, порт PS/2 не поддерживает «горячее подключение».
Порт PS/2 для подключения мышей и клав к ПК уходит в прошлое, уступая место USB. Тем не менее, олдфаги не спешат отказываться от стареньких, но таких привычных клавиатур и мышей, даже если начались проблемы с проводом.
Многие пользователи желают заменить у клавиатуры или мыши штекер PS/2 на USB. Повторюсь: без специального преобразователя устройство PS/2 по USB работать
Интернет полон вопросов, связанных с ремонтом и распиновками старых мышей и клавиатур. А с распиновкой PS/2 (точнее, с цветами проводов PS/2) творится полнейший беспредел. Наши жёлтые трудолюбивые друзья сочиняют шнуры кто во что горазд. Вот, полюбуйтесь — в таблицах ниже собраны некоторые сочетания цветов PS/2:
Мыши. Цвета проводов в шнуре PS/2
Назначение провода PS/2 | GND | VCC | CLK | |
Номер провода PS/2 | 1 | 3 | 4 | 5 |
5BITES F21-M6 | Зелёный | Белый | Чёрный | Красный |
AOELAN | Белый | Оранжевый | Синий | |
A4Tech | Оранжевый | Зелёный | Чёрный | Белый |
A4Tech OP620D | Белый | Чёрный | Красный | Зелёный |
A4Tech SWOP-2 | Зелёный | Оранжевый | Синий | Белый |
Aquarius | Оранжевый | Зелёный | Синий | Белый |
Defender | Белый | Чёрный | Красный | Зелёный |
Gembird MUSOPTI5-PS2 | Оранжевый | Зелёный | Синий | Белый |
Genius GM-04003A XScroll | Белый | Чёрный | Красный | Зелёный |
Genius SK9136 | Зелёный | Красный | Синий | Медный |
Logitec | Чёрный | Красный | Оранжевый | Жёлтый |
Maxdata M-S48a | Чёрный | Красный | Оранжевый | Жёлтый |
Maxxtro | Зелёный | Белый | Синий | Оранжевый |
Mitsumi ECM-S6702 |
Красный | Белый | Зелёный | Чёрный |
Monterey DICE: EM8450FP | Жёлтый | Синий | Зелёный | Красный |
Oclick | Белый | Зелёный | Синий | Красный |
Perfeo | Жёлтый | Белый | Зелёный | Красный |
QbiQ | Красный | Зелёный | Синий | Белый |
Samsung | Синий | Оранжевый | ? | Зелёный |
Solidate | Белый | Зелёный | Синий | Оранжевый |
Super Power MO-035-CA | Зелёный | Оранжевый | Синий | Белый |
Sven OP-1 | Белый | Оранжевый | Синий | Зелёный |
Клавиатуры. Цвета проводов в шнуре PS/2
Назначение провода PS/2 | DATA | GND | VCC | CLK |
Номер провода PS/2 |
1 | 3 | 4 | 5 |
A4Tech | Медно-Синий | Медно-Зелёный | Красно-Синий | Красно-Зелёный |
A4Tech X7, KB-28G, KBS-26 |
Белый | Чёрный | Красный | Зелёный |
Asus PR-1101 | Белый | Чёрный | Красный | Зелёный |
BTC-5107, 5109, 5197, 8190A, 8193 |
Белый | Жёлтый(Экран — чёрный) | Красный | Зелёный |
Chicony KB-0350 | Белый | Жёлтый | Красный | Зелёный |
Chicony KB-2323 | Красный | Чёрный | Коричневый | Жёлтый |
Chicony KB-9810 | Красный | Серый | Коричневый | Жёлтый |
ColorSit | Белый | Жёлтый | Красный | Зелёный |
Compaq 166516-251 |
Белый | Чёрный | Красный | Коричневый |
Defender KM-990 | Белый | Жёлтый | Красный | Зелёный |
Defender KM-2080 | Зелёный | Чёрный | Красный | Белый |
Delux K5002 | Зелёный | Чёрный | Красный | Белый |
Delux К7006 | Белый | Жёлтый | Красный | Зелёный |
Красный | Серый | Коричневый | Жёлтый | |
Digital | Белый | Чёрный | Красный | Коричневый |
Gemix DLK-9872 | Зелёный | Красный | Жёлтый | Белый |
Gemix KB-350 | Белый | Жёлтый | Красный | Зелёный |
Genius GK-040014/U SlimStar 320 | Красный | Серый | Коричневый | Жёлтый |
Genius GK-050008 SlimStar 100 | Белый | Чёрный | Красный | Жёлтый |
Genius GK-050010 SlimStar 310 | Зелёный | Белый + Чёрный (оплётка) | Красный | Жёлтый |
Genius GK-060023/U | Белый | Чёрный | Красный | Зелёный |
Genius K627, K645, KB-06X, KB-29e | Белый | Чёрный | Красный | Жёлтый |
Genius KB-0138 | Красный | Серый | Фиолетовый | Жёлтый |
Genius KB-03X2 (W2036) | Белый | Чёрный | Красный | Зелёный |
Genius KB-19e NB, KL-0210 | Красный | Серый | Коричневый | Жёлтый |
Genius KKB-2040s, KB-110 |
Белый | Жёлтый | Красный | Зелёный |
HP KB-0316 | Красный | Серый | Коричневый | Жёлтый |
или Зелёный | ||||
IBM KB-6323 | Красный | Серый | Коричневый | Жёлтый |
Logitech Office Pro Keyboard | Жёлтый | Белый | Красный | Зелёный |
Mitsumi KFK-EB9HY, KFK-EA4XT, KSX-3 |
Красный | Жёлтый | Зелёный | Коричневый |
Mitsumi standart | Красный | Серый | Чёрный | Жёлтый |
Oklick 180M | Белый | Чёрный | Красный | Зелёный |
Rainbow | Красный | Розовый | Зелёный | Жёлтый |
Samsung – ZK-101/83053 | Белый | Жёлтый | Красный | Зелёный |
SlimStar 310 | Белый | Чёрный | Красный | Жёлтый |
Sven 8100 Pro | Зелёный | Чёрный | Красный | Белый |
SVEN KB-2025 | Белый | Жёлтый | Красный | Зелёный |
Tech-com ssd-kb-870 | Белый | Жёлтый | Красный | Зелёный |
Turbo Spero KX-3801 | Красный | Серый | Фиолетовый | Жёлтый |
Unitek | Белый | Жёлтый | Красный | Зелёный |
Стыковка USB с PS/2
В комплекте к USB-шным мышам и клавам до сих пор идёт адаптер USB-PS/2, чтоб покупатель мог сэкономить пару гнёзд USB на персоналке. Хотя, поговаривают, что ультрасовременные USB мыши/клавы через переходник PS/2 не работают. Ниже привожу распиновку переходника USB-PS/2. Следует помнить, что этот переходник не даёт возможности «горячего подключения» устройств. Во избежание повреждения порта подключайте устройства только к выключенному ПК, даже если речь идёт о подключении USB мыши/клавиатуры к данному переходнику.
Для обратного преобразования (то есть, для подключения устройств PS/2 к порту USB) требуются активные преобразователи. Иными словами, простой перепайкой проводов отделаться не удастся. Нужен некий контроллер. Правда, посетители сайта сообщают, что контроллер некоторых PS/2-устройств (в частности, у клавиатуры Genius KB-29e) всё же поддерживает подключение по USB:
GND ? GND
DATA ? DATA-
CLK ? DATA+
VCC ? VCC
Раздел недели: Скоропись физического, математического, химического и, в целом, научного текста, математические обозначения. Математический, Физический алфавит, Научный алфавит. | |||||||
Поиск на сайте DPVA Поставщики оборудования Полезные ссылки О проекте Обратная связь Ответы на вопросы. Оглавление Таблицы DPVA.ru — Инженерный Справочник | Адрес этой страницы (вложенность) в справочнике dpva.ru: главная страница / / Техническая информация/ / Оборудование/ / Стандарты коммуникации. Сигналы в системах автоматизации (КИПиА)/ / Интерфейсы подключения. Cхемы расположения выводов, разводки выводов, распиновки, распайки./ / Cхемы расположения выводов, разводки выводов, распиновки, распайки — бытовая аппаратура и ПК / / PS/2 разъем клавиатуры — схема расположения выводов, разводка выводов, распиновка, распайка (PS/2 разъем клавиатуры) Поделиться:
| ||||||
Если Вы не обнаружили себя в списке поставщиков, заметили ошибку, или у Вас есть дополнительные численные данные для коллег по теме, сообщите , пожалуйста. | |||||||
Коды баннеров проекта DPVA.ru Начинка: KJR Publisiers Консультации и техническая | Проект является некоммерческим. Информация, представленная на сайте, не является официальной и предоставлена только в целях ознакомления. Владельцы сайта www.dpva.ru не несут никакой ответственности за риски, связанные с использованием информации, полученной с этого интернет-ресурса. Free xml sitemap generator |
Mouse (PS/2) @ pinoutguide.com
Порты PS2 используют синхронные последовательные сигналы для связи между компьютером и клавиатурой или мышью
Передача данных от мыши к компьютеру выполняется, как показано на рисунке 1, каждый тактовый период обычно составляет от 70 до 150 микросекунд (от 10 до 25 микросекунд для переходов и от 30 до 50 микросекунд для высокого или низкого состояния). большие запасы, и это хорошо работает, поскольку это синхронный порт (это также помогает сократить стоимость высокоточных часов). Переход строки данных выполняется по заднему фронту тактового сигнала и обычно замеряется при низком уровне тактового сигнала. Каждый пакет данных состоит из 11 битов, 1 стартового бита (младшего), 8 битов данных, 1 нечетного бита четности и 1 стопового бита (высокого).
Штифт | Имя | Директор | Описание |
---|---|---|---|
1 | ДАННЫЕ | Ключевые данные | |
2 | н/д | — | Не подключен |
3 | ЗЕМЛЯ | Земля | |
4 | ВКЦ | Питание, +5 В постоянного тока | |
5 | КЛК | Часы | |
6 | н/д | — | Не подключен |
Данные
Пакеты данных мыши или коды сканирования клавиатуры отправляются с мыши или клавиатуры на компьютер по этому единственному проводу последовательно.
Часы
Этот сигнал посылается мышью или клавиатурой для синхронизации сигнала данных.
+5 В постоянного тока
Это простой сигнал 5 В для питания мыши или клавиатуры.
Земля
Это общий сигнал земли, используемый в качестве обратного пути для данных и являющийся ссылкой на логический 0.
Когда мышь PS2 отправляет свою информацию, она должна отправить 3 последовательных пакета данных подряд. Каждый пакет send имеет различную информацию о нажатии кнопки, движении и направлении движения. В таблице ниже показано, какая информация отправляется в каждом пакете. Пожалуйста, помните, что эта информация носит общий характер и может меняться от одного производителя к другому. Это для 2 кнопок мышь. Я понятия не имею, какой бит используется для других типов мышей, например, с 3 кнопками или колесиками прокрутки.
Д7 | Д6 | Д5 | Д4 | Д3 | Д2 | Д1 | Д0 | |
---|---|---|---|---|---|---|---|---|
1-й | ЮВ | XV | ИС | ХС | 1 | 0 | Р | л |
2-й | Х7 | Х6 | Х5 | Х4 | Х3 | Х2 | Х1 | Х0 |
3-й | Y7 | Y6 | Y5 | Y4 | Y3 | Y2 | Y1 | Г0 |
л | Состояние левой кнопки (1 = нажата) |
Р | Состояние правой кнопки (1 = нажата) |
Х0-Х7 | Движение в направлении X |
Y0-Y7 | Движение в направлении Y |
XS | Направление движения по оси X (1 = ВВЕРХ) |
ИС | Направление движения по оси Y (1 = ВЛЕВО) |
XV,YV | Переполнение в битах данных движения (1 = произошло переполнение) |
Биты направления X и Y отправляют количество битов, на которое вы переместились с момента последней отправки этой информации, фактическое направление движения передается в битах XS и XY. Если перемещение мыши превысило 255 перемещений данных с момента последней отправки информации, бит переполнения станет равным единице и сбрасывается обратно на 0, как только будут отправлены текущие данные. То, как драйвер обрабатывает переполнение, может меняться от одного драйвера мыши к другому, некоторые могут перемещать указатель на 256 битов данных, а некоторые могут даже решить оставить указатель там, где он есть! Некоторым из вас может быть интересно, какие именно биты данных отправляются для битов движения, вы сможете вскоре узнать об этом в разделе устройств ввода-вывода для мышей, который скоро будет онлайн!
PS2
<-> АДАПТЕРЫ COM МЫШИ Многие из вас спрашивали, как подключить последовательные мыши к портам PS2 и наоборот. Это очень деликатная тема, и я бы никому не рекомендовал делать эти адаптеры на свой страх и риск. Большинство мышей предназначены либо для PS2, либо для последовательных портов, а некоторые предназначены для обоих, в последнем случае соответствующие адаптеры поставляются с мышью при ее покупке или могут быть приобретены в качестве опции.
Из-за характера портов два типа мышей несовместимы напрямую. Они не отправляют информацию по одному и тому же вопросу (разные протоколы) и не используют одинаковые уровни сигналов, мыши PS2 используют логические сигналы TTL (0-5 вольт), а мыши с последовательным интерфейсом используют сигналы RS232 (обычно +10 вольт — -10 вольт). Мощность мышей COM и PS/2 также различается; Мышь обоих назначений должна без повреждений воспринимать -25..+25 на контакте питания и работать от +5 до +10.
Если мышь COM рассчитана на работу с обоими портами, она поставляется с 9-контактным разъемом D-Shell, который используется в мышах с последовательным интерфейсом. Эти разъемы имеют 9 контактов, а последовательная мышь использует только от 5 до 8 контактов. Это оставляет нам по крайней мере 1 запасную линию, это линия, которую часть данных PS2 мыши будет использовать для отправки своей информации. Как видите, адаптеры предназначены для работы с определенной маркой и моделью и обычно несовместимы с другими мышами. В некоторых источниках упоминается этот переходник (который, наверное, чаще всего используется):
Имя мыши COM | СОМ № | PS/2 # | Имя PS/2 |
мощность +5/+10 | 4+7+9 | 4 | +5В |
дополнительный (PS/2) контакт данных | 1 | 1 | Данные |
ТСД+ЗЕМЛЯ | 3+5 | 3 | Земля |
дополнительный (PS/2) тактовый штифт | 6 | 5 | Часы |
Когда мышь PS/2 рассчитана на работу с обоими портами, дела обстоят немного лучше. Большинство мышей, совместимых с PS/2 COM, используют контакты 2 и 6 PS/2, чтобы обеспечить дополнительные линии для COM-совместимости. Это предполагает следующий адаптер:
Имя мыши PS/2 | PS/2 # | СОМ № | COM-имя |
Земля | 3 | 5 | ЗЕМЛЯ |
дополнительный (COM) RxD | 2 | 2 | РхД |
дополнительный (COM) TxD | 6 | 3 | ТхД |
мощность +5/+10 | 4 | 7 | РТС |
В обоих случаях есть вероятность, что любой из этих адаптеров будет работать. Если контакты 2 и 6 в мыши PS/2 ни к чему не подключены (это можно проверить мультитестером), то мышь PS/2 не имеет COM-поддержки.
Разрешение мыши и скорость отслеживания
Стандартная мышь PS/2 (с мышью Logitech) по умолчанию настроена на 160 CPI и может быть переключена на 40, 80, 160 или 320 CPI с помощью программного обеспечения. Драйвер мыши Microsoft для Windows 3.x и Windows 95 дефолтов до 160 единиц на дюйм. Максимальная скорость отслеживания для мыши PS/2 составляет 40 отчетов в секунду * 255 импульсов на отчет = 10200 импульсов в секунду. Для мыши 100 CPI это будет означать максимальную скорость отслеживания 102 дюйма в секунду, а для мыши 400 CPI только 25,2 дюйма в секунду.
Двунаправленная передача управляется линиями CLK и DATA. Оба питаются от устройства с открытым коллектором, которое позволяет хосту или мыши перевести линию в «0». Во время отсутствия передачи CLK находится в состоянии «1», а DATA может быть в состоянии «0» или «1».
Хост может запретить передачу мыши, установив CLK в «0». Если хост запрещает мышь во время передачи, байт должен быть передан повторно (если состояние запрета наступило до 11-го такта).
В моем старом техническом справочнике IBM PS/2 модели 50/60 есть простое описание. Интерфейс мыши такой же, как интерфейс клавиатуры. Intel 8042 поддерживает два канала: один для клавиатуры и один для вспомогательного устройства (мышь, трекбол, тачпад). Контакт 1 — это данные, контакт 3 — земля, контакт 4 — +5 В и контакт 5 — часы.
Получение данных: Проверить «часы». Если неактивно, на линии «данные» есть бит. Каждая единица передачи состоит из одного стартового бита, восьми битов данных, нечетной четности и одного стопового бита. Стартовые биты низкие, стоповые биты высокие. Каждый тактовый активный или неактивный период составляет от 30 до 50 микросекунд. Переход данных к заднему фронту такта составляет от 5 до 25 микросекунд.
Отправка: Убедитесь, что и часы, и данные имеют высокий уровень. Вытащите данные для стартового бита и начните тактирование.
ПРИМЕЧАНИЕ. Компания Logitech сделала собственное расширение этого протокола, позволяющее использовать три кнопки.
Детекторы движения мыши
Наиболее типичная конструкция детекторов движения мыши — оптомеханические детекторы. Система работает так, что движения мыши по осям X и Y вращают диски с прорезями. Информация о движении затем собирается с этих дисков с прорезями с помощью оптических датчиков. Для каждого диска с прорезями есть два датчика, и эти датчики выдают два сигнала, которые сдвинуты по фазе на 90 градусов по сравнению друг с другом.
датчик №0 ---- ---- ---- ---- свет ---- ---- ---- Нет света датчик №1 ---- ---- ---- -- свет -- ---- ---- ---- нет света 9полный цикл импульсов
Это может быть декодировано четырьмя дискретными битовыми парами для двух датчиков:
Направление вперед Направление назад 0 1 2 3 3 2 1 0 датчик № 0 - 1 1 0 0 0 0 1 1 датчик №1 - 0 1 1 0 0 1 1 0
Эту информацию можно легко расшифровать с помощью небольшого микроконтроллера, а затем отправить на компьютер в правильном формате.
PS/2 Мышь
Сигналы разъема мыши Мыши Serial, Bus и PS/2 Использование мышей с последовательным интерфейсом на PS/2? Типы мышей IBM PS/2 в последовательный порт в PS/2 ps2mouse.zip Программная дискета IBM PS/2 Mouse, версия 1.00 Мышь PS/2 Maker Расположение разъема мыши (манипулятора). Порт мыши PS/2 имеет IRQ 12, а адреса портов ввода-вывода 60h и 64ч. Проблема с автобусной мышью! Разъем для мыши Распиновка Разъем клавиатуры представляет собой 6-контактный миниатюрный разъем DIN. Сигналы и напряжения одинаковы для обоих разъемов. Сигналы Сигналы клавиатуры и вспомогательных устройств управляются открытым коллектором Драйверы подключены к 5Vdc через подтягивающий резистор. Серийная мышь Преобразование? «Последовательная мышь» использует интерфейс типа RS-232 с От -5 до -12 В постоянного тока как логическая «1» и от +5 до +12 В постоянного тока как логический «0». PS/2 интерфейс мыши представляет собой интерфейс в стиле TTL, который использует 0–2 В постоянного тока в качестве логического «0» и +3 — +5 В постоянного тока как логическая «1». Кроме того, что еще хуже, RS-232 асинхронный интерфейс, интерфейс PS/2 является синхронным, где данные отправляются вместе с тактовым сигналом. Он использует упрощенный 4-проводной последовательный интерфейс с +5VDC (для трансивера), GND, часы клавиатуры/мыши и данные клавиатуры/мыши. Линия данных и часы могут быть использованы от контроллер клавиатуры/мыши и подключенное устройство, а также после конкретное рукопожатие, которое определяет, кто является активным «отправителем», а какой является «приемником». Итак: это не *эта* простая мышь с последовательным интерфейсом PS/2 и наоборот. Мыши с двойным режимом имеют автоматическое определение логики. и своего рода адаптивный электронный интерфейс, который определяет, подключается к последовательному порту или порту PS/2 и устанавливает выходные драйверы соответственно. Как видно из вышеизложенного: не хватает только *физически* замена заглушек. Мышь PS/2 Версии От Фреда Мау Насколько я могу судить, у IBM было пять различных видов Rattus
Армонкус в мире PS/2: (Не говоря уже обо всех клонах). Насколько я могу судить, все мыши PS/2 (кроме
мышь для ранних ThinkPad) взаимозаменяемы, за одним заметным исключением:
Если у вас монитор с сенсорным экраном 8516, кабель сенсорного экрана подключается к
порт мыши и мышь подключаются к монитору, но это будет работать ТОЛЬКО
с оригинальной уродливой мышью или ранней овальной мышью с белыми кнопками.
Это не будет От Джим Шорни : Ред. Я думаю, он имеет в виду ЭТО От Кэрролл Блойд От Дэвида Дорра Увеличение разрешения Мышь PS/2 для последовательный кабель и обратно к порту PS/2 От Тима Кларка Привет, Билл, Я думаю, что ваша проблема в PS/2->Serial и Serial->PS/2 адаптеры. Вы *должны* убедиться, что они *соответствуют* описанию и *не* 2 x PS/2->Serial или 2 x Serial->PS/2, используемые встык. В противном случае распиновки не будут «передаваться» правильно. Следует помнить, что при ручном переключении клавиатура и мышь «теряют» питание во время переключения и «повторно инициализируются» когда замыкание переключателя на «к» компьютеру завершено (т. е. питание 5 В возвращается). Кроме того, вы можете получить ложные байты, отправленные во время переходов. Как я уже сказал, DOS (из-за BIOS) и OS/2 (из-за свои драйверы и не реализовали эквивалентную функциональность, которая приведет к тому, что вы «потеряете» мышь и/или клавиатуру (за исключением маниакального звуковой сигнал при нажатии клавиш) после последовательности «отключение, обратное переключение»). Это может быть связано с драйверами операционной системы. Например. Все PS/2 BIOS/ABIOS похоже, обрабатывают «неожиданное переподключение клавиатуры» (т.е. байты 0xFF и сообщение о завершении BAT) и повторно инициализируйте «Набор кодов сканирования» и «Сдвиг». Индикаторы состояния. Вещи с мышью кажутся гораздо более чувствительными и OS/2 это единственная серверная среда, которая, как я *знаю*, может (обычно) справиться с этим. Netware 3.1x и 4.1x — нет. Windows и WfWg этого не делают. сомневаюсь что W9Икс делает. NT *может*, но я не знаю. DOS счастлив, пока вы на командная строка без программного обеспечения, управляемого мышью, активно использующего мышь. Текущий производитель мышей В списке Unicomp есть двухкнопочная мышь IBM. Он имеет коричневый кнопки и белый корпус. У меня есть несколько экземпляров этой конкретной модели. Хорошая кнопка переключает, отслеживает хорошо. За 7 долларов это чертовски хорошая сделка. у моего длинная шнур (удобен для использования с системами 80/85/95!) 96Ф9275 Двухкнопочная мышь IBM Обычная 15 долларов США Распродажа 7 долларов США Последовательный, шина и PS/2
Мыши Не могли бы вы описать, как работают три распространенных типа мышей (последовательные,
шина и порт мыши PS/2), как драйвер мыши взаимодействует с мышью,
а как программы в свою очередь разговаривают с драйвером мыши? На программном уровне все шины, последовательные мыши и мыши PS/2 одинаковый. Драйвер мыши предоставляет общий интерфейс, так что приложение программа может общаться с мышью, используя идентичные наборы вызовов функций независимо от своего типа. Однако на аппаратном уровне эти типы мышей принципиально другой. Последовательная мышь работает так же, как устройство связи: Он отправляет данные на выбранный вами последовательный порт каждый раз, когда происходит событие мыши. происходит. (Событие мыши — это когда кнопка нажата или отпущена или мышь перемещается.) Микропроцессор внутри мыши передает пакет данных каждый раз, когда он обнаруживает изменение состояния. Обычно драйвер мыши программирует последовательный порт на прерывание ЦП, когда байт данных получен на порту. Он делает это в точно так же, как коммуникационная программа, такая как ProComm. Если мышь неподвижна и никакие кнопки не активируются, ЦП не время привязано к отслеживанию действий мыши. Многие мыши с последовательным интерфейсом используют 3-байтовый формат пакета, стандартизированный Microsoft. для передачи информации о положении мыши и состоянии кнопок
к процессору. На рисунке I показан формат пакета. С
Microsoft Serial Mouse передает данные со скоростью 1200 бит в секунду, используя
I стоповый бит, 7 бит данных и без четности, бит 7 (крайний левый бит) в каждом
байт не используется. Бит 6 — это тактовый бит, который использует драйвер мыши.
для синхронизации с мышью. В первом байте пакета
установлено значение 1; во втором и третьем байтах установлено значение 0. Биты
4 и 5 указывают текущие состояния вверх/вниз левой и правой мыши.
кнопки. 0 указывает, что соответствующая кнопка нажата,
в то время как я указывает, что это не так. Остальные биты в данных
пакеты объединяются для формирования двух 8-битных чисел, указывающих количество
mickeys мышь перемещается в направлениях x (горизонтально) и y (вертикально)
с момента последнего отчета. Микки — это единица расстояния мыши, равная
приблизительно до 0,005 дюйма. Записывая микки, драйвер мыши
может отслеживать местоположение мыши в любое время. Рис. 1. ПАКЕТ ДАННЫХ MICROSOFT SERIAL MOUSE DATA ФОРМАТ Каждый раз, когда мышь с последовательным интерфейсом перемещается, она передает пакет данных, содержащий информацию о положении мыши и состоянии кнопок на ПРОЦЕССОР. На этом рисунке показан 3-байтовый формат пакета данных, который используется с помощью Microsoft Serial Mouse и многих других Microsoft-совместимых последовательных Мыши. Байт 1 Байт 2 Байт 3 Бит Описание RB Правая кнопка Y7-Y0 8-битный индикатор перемещения по оси Y (количество перемещенных микки
в горизонтальном направлении с момента последней передачи данных. Драйвер мыши может определять направление движения-вверх или вниз, вправо или влево — от знака микки отсчетов, передаваемых мышью, которые закодированы в форме дополнения до двух (общий метод для представления целые числа со знаком на компьютерах). Используя это представление, 8-битный value может хранить любое число от -128 до 127 включительно. Таким образом, мышь может двигаться до 127 единиц в любом направлении (около 0,62 дюйма) за время, необходимое для передачи пакета (около 20 миллисекунд). со скоростью 1200 бит/с), не теряя ни секунды. Это обеспечивает достаточную широту чтобы вы могли перемещать мышь по столу достаточно быстро, не теряя Любая информация в процессе. Некоторые мыши используют более высокие скорости передачи данных для увеличить разрешение. Logitech Series 9Мышь, например, работает со скоростью 2400 бит/с, что удваивает диапазон, в котором мышь может перемещаться между данными передачи. Не все мыши с последовательным интерфейсом используют 3-байтовый формат пакета Microsoft. Трехкнопочная система Mouse Mouse, например, передает данные в 5-байтовом формате. пакеты. Добавленные биты используются для передачи информации о третьем кнопка (то, что формат Microsoft не поддерживает) и информация о текущей и последней позициях мыши, что, помимо прочего, можно использовать для определения скорости мыши. Как последовательная мышь получает свою силу? Он не на батарейках,
и его не нужно подключать к электрической розетке. Вместо,
он получает питание напрямую от последовательного порта через RTS (запрос к
отправить) строку. Microsoft Serial Mouse использует пять линий RS-232: TD
(передача данных), RD (чтение данных), DTR (терминал данных готов), RTS готов
для отправки) и SG (сигнальная земля). TD используется для передачи пакетов
данных. Драйвер устанавливает RTS, когда он активирован, чтобы убедиться, что
питание доступно для мыши, и утверждает DTR как сигнал, что это
установлен и готов к работе. В текущих реализациях Microsoft Serial Mouse,
РД не используется. АВТОБУСНАЯ МЫШЬ Схема взаимодействия с шиной мыши использует совершенно другой подход. для подключения мыши к ПК. В отличие от последовательной мыши, шинная мышь не содержит собственного микропроцессора. Вместо этого логика на шине Интерфейсная карта отвечает за мониторинг мыши и уведомление драйвер мыши, когда мышь перемещается или нажимается кнопка. В самая распространенная реализация, карта запрограммирована на опрос мыши через равные промежутки времени (обычно каждые 1/30–1/60 секунды) и прерывание ЦП, чтобы драйвер мыши мог считывать текущее состояние мыши из регистрируется на карте. Почему эти частоты прерывания? Потому что от 30 до 60 Гц примерно соответствует частоте обновления большинства дисплеев. Когда указатель мыши перемещается по экрану, обычно нет нужно чаще опрашивать мышь, потому что экран не может обновляться достаточно быстро, чтобы показать, что происходит. трудно нарисовать картину как работает «типичная» автобусная мышь. Версии Microsoft Bus Mouse продается с 19 года86, например, содержат специальный чип, называемый InPort на интерфейсной плате шины. Этот чип отслеживает события мыши и тому подобное. микропроцессор в последовательной мыши прерывает ЦП только тогда, когда мышь перемещается или кнопка мыши нажимается или отпускается. Сюда, ценное процессорное время не тратится впустую на чтение регистров на интерфейсной карте когда мышь простаивает. А благодаря чипу InPort шина Microsoft Мышь можно запрограммировать на работу с частотой 30, 50, 100 или 200 Гц. Также возможно, чтобы микросхема InPort регулярно прерывала ЦП. интервалы независимо от того, есть ли что-то новое, чтобы сообщить, или воздержаться полностью прерывает и позволяет программному обеспечению управлять мышью строго по опрашивая его. По этой схеме драйвер мыши (или программа, управляющая мышь) может отслеживать положение мыши более точно, чем запрограммировано Допускается частота прерываний от 30 до 200 Гц. В качестве альтернативы он может подключаться к вертикальный синхроимпульс, генерируемый видеоадаптером каждый раз при обновлении экрана завершено и найдите время, чтобы прочитать статус мыши во время вертикального интервал гашения. Шинная мышь не отправляет пакеты данных так, как это делает последовательная мышь. Вместо этого статус считывается непосредственно из линий, соединяющих мышь с плата интерфейса шины. Например, Microsoft Bus Mouse использует девятиконтактный круглый разъем Hosiden, показанный на рис. 2. Из девяти контакты, три — SWI, SW2 и SW3 — отражают состояние до трех кнопок мыши. в настоящее время. XA, XB, YA и YB несут квадратурные сигналы, количество и направление движения в направлениях x и y для противодействия регистрируется внутри чипа InPort. В квадратурном кодировании две строки предназначены для отслеживания движения в заданном направлении. Импульс на одном линий — например, XA — указывает, что мышь была перемещена. Импульс на XB, который приходит немного не в фазе с импульсом на XA, раскрывает направление движения. Если ХА ведет, то движение положительный; если первым приходит импульс на XB, движение отрицательное направление. Значения, считанные из регистров счетчика InPort, равны двойкам. дополняют 8-битные числа, поэтому они, как и значения, передаваемые по последовательному мыши, может варьироваться от -128 до 127. Остальные два контакта на разъеме выполняют не менее важные функции.
Шинная мышь получает питание от контакта +5V, а другой контакт
К земле, приземляться. Рис. 2. ВЫВОД МЫШИ MICROSOFT BUS Мышь Microsoft Bus Mouse использует круглый разъем с девятью контактами для интерфейса
с картой интерфейса шины. SW1, SW2 и SW3 используются для определения состояния
кнопок мыши. XA, XB, YA и YB несут квадратурные сигналы, указывающие
движение и направление мыши. Мышь питается от +5В.
контакт, в то время как оставшийся контакт идет на землю. SW2| SW3| | Сигнал
Земля X = Обозначает каждый контакт. МЫШЬ PS/2 Мышь PS/2 во многом похожа на мышь с последовательным интерфейсом. Эта мышь содержит собственный микропроцессор, который передает синхронизированные последовательные данные. данные на контроллер клавиатуры внутри PS/2, точно так же, как клавиатура PS/2 делает. Контроллер декодирует поступающую информацию, и PS/2 BIOS делает его доступным для драйвера мыши. Через программирование БИОС интерфейс, частота дискретизации мыши может быть установлена на частоты в диапазоне от от 10 до 200 Гц. Как правило, драйвер мыши регистрируется в BIOS, и каждый раз BIOS будет активировать обработчик внутри драйвера. происходит событие, связанное с мышью. Одной из особенностей мыши PS/2 является то, что используемый ею формат пакета
не включает тактовый бит, как это делает пакет Microsoft. Более того,
потому что один и тот же контроллер системной платы используется для декодирования поступающих данных.
с помощью мыши и клавиатуры одновременно, программы, использующие оба
мышь и клавиатура на PS/2 иногда перегружаются данными
которые приводят к тому, что драйвер мыши теряет синхронность с мышью. Если бы был тактовый бит, синхронизация могла бы быть восстановлена и переполнение
состояние может быть побеждено. Без тактового бита разработчики приложений
были вынуждены прибегнуть к нескольким специальным средствам поддержания целостности
принадлежащий Не случайно вы можете заменить конечный адаптер на Microsoft
Serial Mouse и подключите ее к порту мыши PS/2. PS/2
порт мыши имеет шесть контактов, один из которых подает питание на мышь (см. рис.
2б). Microsoft Serial Mouse смотрит на эту строку, чтобы определить, что
тип порта, к которому он подключен, и настраивает формат отправляемых данных
соответственно. Если линия заявлена (несущая напряжение), то
мышь знает, что она подключена к порту PS/2. Если линия не
утверждается, мышь делает вывод, что она должна быть подключена к последовательному порту. Рис. 2b. МЫШЬ IBM PS/2 КОНТАКТЫ Ой. По словам самого Питера, «Везде, где у вас есть разъем для мыши PS/2, от: это полная ерунда». Я предположил, что автор знал достаточно, чтобы сделать это правильно. Посмотреть настоящую распиновку мыши PS/2 (в сторону вверху страницы) Это иллюстрация из оригинального текста. Не «AC Commercial Питание, Предупреждающий сигнал о низком заряде батареи». Номер контакта /———\ ИНТЕРФЕЙС ПРОГРАММИРОВАНИЯ МЫШИ К счастью, программам не нужно взаимодействовать с мышью на пакете. уровень; для этого нужны драйвера мыши. Драйвер мыши это программа, которую вы устанавливаете перед запуском приложения, использующего мышь. Драйвер мыши Microsoft называется MOUSE.SYS или MOUSE.COM. (Единственный разница между ними в том, что MOUSE.SYS устанавливается вместе с DEVICE в CONFIG.SYS, а MOUSE.COM устанавливается с помощью команды строку или файл AUTOEXEC.BAT.) Мышь, совместимая с Microsoft и Nbcrosoft драйверы предоставляют набор из 35 высокоуровневых вызовов функций, которые приложения можно использовать для связи с мышью. Рис. III – ВЫЗОВЫ ФУНКЦИЙ ДРАЙВЕРА МЫШИ Майкрософт и Microsoft-совместимые драйверы мыши обеспечивают 35 различных вызовы функций (функции 17 и 18 не назначены), что программа можно использовать для связи с мышью. В совокупности эти функции вызовы составляют интерфейс программирования мыши. Код Описание Например, если программа хочет определить, нажата ли кнопка мыши. в настоящее время удерживается нажатой, все, что ему нужно сделать, это позвонить по номеру функции 5, получить информацию о нажатии кнопки. Драйвер, обрабатывающий прерывание генерируется при нажатии или отпускании кнопки мыши, отслеживает состояние кнопок. В ответ на запрос программы драйвер возвращает целое число, значение которого отражает текущий статус кнопки. Если левая кнопка нажата, бит 0 устанавливается в 1; если правая кнопка нажата, биту 1 присваивается значение 1. Значение 0 в любом из битов указывает на что соответствующая кнопка не нажата. Доступ к функциям драйвера мыши осуществляется через прерывание 33h. следующая последовательность кода изображает типичный вызов драйвера мыши выглядит на ассемблере: MOV AX,5 Обычно коды функций передаются в регистре AX, а другие параметры в BX, CX и DX. Эта конкретная последовательность вызывает функцию 5 для получения состояние правой кнопки мыши (BX=l для правой кнопки, BX=O для левый). По возвращении проверяется бит I регистра BX и переход делается, если он установлен на 0, указывая, что кнопка в данный момент не нажата. У нас нет места для изучения каждого из вызовов функций в деталь. Дополнительные сведения см. в документе Microsoft Mouse Programmer’s. Ссылка (1989, Microsoft Press) или на журнал PC Magazine от 21 июля 1987 г., Lab. Столбец «Примечания» («Программное обеспечение для мыши: посмотрите, как они работают», стр. 41 1). Однако, есть одна функция, которая так полезна и так широко используется программистами что обсуждение интерфейса программирования мыши не может рассматриваться без него: функция 12, установка маски вызова подпрограммы прерывания и Адрес. Функция 12 позволяет программе дать указание драйверу мыши прервать ее асинхронно при перемещении мыши или нажатии или отпускании кнопки. Программа передает драйверу мыши два объекта: маску вызова и подпрограмму. адрес. Маска вызова действует как фильтр событий. Если программа не интересует движения мыши или отпускание кнопок, маска вызова может настроить так, чтобы драйвер прерывал программу только при нажатии кнопки происходит пресс. |