83 lines
3.4 KiB
Markdown
83 lines
3.4 KiB
Markdown
|
---
|
|||
|
title: "Подключение геймпадов от PlayStation к USB"
|
|||
|
categories: ["mcu", "archive"]
|
|||
|
date: 2015-08-13T00:00:00+03:00
|
|||
|
draft: false
|
|||
|
featured_image: gamepads.jpg
|
|||
|
---
|
|||
|
|
|||
|
|
|||
|
Недавно на барахолке повезло купить два геймпада DualShock2 по очень таки низкой цене. Но вот незадача - у геймпадов PlayStation свой разъем и общаются с консолью они по интерфейсу SPI. Пару минут гугла и находим сайт со схемой переходника PSX->USB на ATmega8. Ну что ж, берёмся за дело.<!--more-->
|
|||
|
|
|||
|
|
|||
|
Нам понадобятся:
|
|||
|
|
|||
|
* ATmega8
|
|||
|
* 2 резистора 22-68 Ом
|
|||
|
* резистор 1.5-2.2 кОм
|
|||
|
* 2 стабилитрона 3.6в
|
|||
|
* кварцевый резонатор 12 МГц
|
|||
|
* 2 конденсатора 22 пФ
|
|||
|
* светодиод и резистор для него (100-500 Ом)
|
|||
|
* USB шнур
|
|||
|
|
|||
|
|
|||
|
Схема следующая:
|
|||
|
|
|||
|
![Схема|642](schematic.gif)
|
|||
|
|
|||
|
![Подключение контроллеров|276](connections.png)
|
|||
|
|
|||
|
Назначение контактов в геймпадах уже было подписано заботливыми (наверное) китайцами.
|
|||
|
|
|||
|
![Плата с распиновкой|300](pcb_pins.jpg)
|
|||
|
|
|||
|
**DI = DAT**
|
|||
|
|
|||
|
**DO = CMD**
|
|||
|
|
|||
|
**CS = SEL**
|
|||
|
|
|||
|
![Распиновка разъема|](pinout.png)
|
|||
|
|
|||
|
Мегу я прошил ещё до пайки. Прошивку заливал вторую (psx2.hex), так как геймпадов у меня два. Фьюзы выставляются на тактирование от внешнего резонатора (High Freq.)
|
|||
|
|
|||
|
![Фьюзы для CodeVisionAvr|](fusebits.png)
|
|||
|
|
|||
|
Если честно, мне лень было травить плату для такой схемы, так что я просто расцарапал и залудил кусочек стеклотекстолита. Затем напаял микросхему сверху. Вышло следующее:
|
|||
|
|
|||
|
![|300](shit1.jpg)
|
|||
|
|
|||
|
Напаял основные части:
|
|||
|
|
|||
|
![|300](shit2.jpg)
|
|||
|
|
|||
|
В качестве корпуса я взял старый блок питания от радиотелефона.
|
|||
|
|
|||
|
Просверлил в нём дырки, протянул через них провода от геймпадов, припаял:
|
|||
|
|
|||
|
![|300](shit3.jpg)
|
|||
|
|
|||
|
Вот такая красота получилась:
|
|||
|
|
|||
|
![|300](gamepads.jpg)
|
|||
|
|
|||
|
Так устройство распознаётся в системе: ![|295](pc1.png)
|
|||
|
|
|||
|
Откалибровать геймпады можно зайдя в **Панель управления -> Устройства и принтеры** (Win7). Там находим наше устройство:
|
|||
|
|
|||
|
![|525](pc2.png)
|
|||
|
|
|||
|
Щёлкаем правой кнопкой -> **Параметры игровых устройств управления**
|
|||
|
|
|||
|
![|808](pc3.png)
|
|||
|
|
|||
|
Если при нажатии кнопок на геймпаде в окошке ничего не меняется, что что-то пошло не так.
|
|||
|
|
|||
|
**Ссылки:**
|
|||
|
|
|||
|
[Прошивка и исходник](psx_to_usb.zip)
|
|||
|
|
|||
|
[Сайт-источник](http://www.radiomexanik.spb.ru/kompyuternaya-elektronika/podklyuchenie-dzhoystikov-ot-igrovyih-pristavok-k-shine-usb.html)
|
|||
|
|
|||
|
[Распиновка отсюда](http://radiokot.ru/lab/controller/17/)
|