Как преобразовать USB в PS/2?
Цель: подключить мою USB-клавиатуру к плате Arduino Uno.
Ограничения: я не могу позволить себе USB host shield для Arduino на данный момент. В настоящее время доступна клавиатура с разъемом PS/2. Этот пример доступен здесь. Однако глупо сейчас покупать такую клавиатуру или конвертер USB в PS/2.
Задача: USB имеет VCC, GND, RX/TX. (Rx/Tx также обозначены как D+/D- соответственно). Разъем параллельного порта имеет следующее:
Где будет находиться D-штырь?
@deostroll, 👍2
Обсуждение1 ответ
Многие USB-клавиатуры (конечно, старые, хотя почти наверняка не беспроводные) также являются клавиатурами PS/2. Отличается только разводка кабеля, а чип в клавиатуре меняет свое поведение в зависимости от того, как он подключен.
Простой адаптер USB-PS/2 — это просто разъем USB и штекер PS/2, соединенные вместе определенным образом:
Итак, вот:
- 5В на 5В
- D- к данным
- D+ на часы
- ЗЕМЛЯ к ЗЕМЛЕ
Это может работать с вашей клавиатурой, а может и нет. Все, что вы можете сделать, это попробовать и посмотреть.
- Ввод текста в ESP8266 с помощью USB-клавиатуры
- Можно ли создать устройство IP-to-USB HID (клавиатуру) с помощью Arduino?
- Keyboard.print() пропускает клавиши
- Разбудить компьютер из Uno
- STM32 в качестве клавиатуры
- Считать клавиши с обычной USB-клавиатуры
- Эмуляция клавиатуры
- Кнопка и поворотная ручка для отправки нажатия клавиши на ПК
USB не имеет RX/TX., @Ignacio Vazquez-Abrams
Есть ли причина, по которой вы думаете, что клавиатура USB будет работать с библиотекой PS2? Это не одно и то же, а два совершенно разных способа связи. Когда вы хотите подключить USB-ведомое устройство, вам просто нужно (!) реализовать некое USB-ведущее устройство. Вот как работает USB., @chrisl
@chrisl Многие клавиатуры USB также могут работать как клавиатуры PS/2. Подключите их к одному из этих зеленых преобразователей USB в PS/2, и они станут клавиатурой PS/2. В этих преобразователях нет электроники, это просто штекер. Клавиатура должна распознать, что она подключена к PS/2, а не к USB, и изменить свое поведение. Не все клавиатуры могут это делать, но большинство старых точно могут. Сомневаюсь, что беспроводные будут работать., @Majenko
@IgnacioVazquez-Abrams Я думал, что зеленый/белый провода соответствуют TX/RX соответственно..., @deostroll
@chrisl слышал, что микроконтроллеры клавиатуры поддерживают оба протокола... так что мне придется самому выяснить, что происходит с моей клавиатурой... :(, @deostroll
@deostroll USB использует «низковольтные дифференциальные сигналы». Он полудуплексный (только отправляет или получает, никогда оба сразу) и отправляет сигнал дважды — один раз нормально (D+) и один раз инвертированно (D-). На приемнике два сигнала объединяются (D- инвертируется, затем добавляется к D+), чтобы исключить любые синфазные (индуцированные) помехи. Это позволяет развивать более высокие скорости на больших расстояниях. RS-485 использует ту же технику для традиционной связи UART на очень больших расстояниях., @Majenko