mmote.ru/content/posts/dualshock-avr-usb/index.md

3.4 KiB
Raw Permalink Blame History

title categories date draft featured_image
Подключение геймпадов от PlayStation к USB
mcu
archive
2015-08-13T00:00:00+03:00 false gamepads.jpg

Недавно на барахолке повезло купить два геймпада DualShock2 по очень таки низкой цене. Но вот незадача - у геймпадов PlayStation свой разъем и общаются с консолью они по интерфейсу SPI. Пару минут гугла и находим сайт со схемой переходника PSX->USB на ATmega8. Ну что ж, берёмся за дело.

Нам понадобятся:

  • ATmega8
  • 2 резистора 22-68 Ом
  • резистор 1.5-2.2 кОм
  • 2 стабилитрона 3.6в
  • кварцевый резонатор 12 МГц
  • 2 конденсатора 22 пФ
  • светодиод и резистор для него (100-500 Ом)
  • USB шнур

Схема следующая:

Схема|642

Подключение контроллеров|276

Назначение контактов в геймпадах уже было подписано заботливыми (наверное) китайцами.

Плата с распиновкой|300

DI = DAT

DO = CMD

CS = SEL

Распиновка разъема|

Мегу я прошил ещё до пайки. Прошивку заливал вторую (psx2.hex), так как геймпадов у меня два. Фьюзы выставляются на тактирование от внешнего резонатора (High Freq.)

Фьюзы для CodeVisionAvr|

Если честно, мне лень было травить плату для такой схемы, так что я просто расцарапал и залудил кусочек стеклотекстолита. Затем напаял микросхему сверху. Вышло следующее:

|300

Напаял основные части:

|300

В качестве корпуса я взял старый блок питания от радиотелефона.

Просверлил в нём дырки, протянул через них провода от геймпадов, припаял:

|300

Вот такая красота получилась:

|300

Так устройство распознаётся в системе: |295

Откалибровать геймпады можно зайдя в Панель управления -> Устройства и принтеры (Win7). Там находим наше устройство:

|525

Щёлкаем правой кнопкой -> Параметры игровых устройств управления

|808

Если при нажатии кнопок на геймпаде в окошке ничего не меняется, что что-то пошло не так.

Ссылки:

Прошивка и исходник

Сайт-источник

Распиновка отсюда