Подключение джойстиков от игровых приставок к компьютеру

Подключение джойстиков от игровых приставок к PC

Бывшие некогда популярные 8- и 16-битные видеоприставки уже давно утратили свое лидерство на рынке игровых развлечений и вытеснены новыми поколениями консолей. Однако, игры, написанные в те времена, когда оперативная память исчислялась всего несколькими десятками килобайт, частота процессора - единицами мегагерц, а код и данные игры "влазили" в ПЗУ объемом порядка сотни килобайт, и по сей день не утратили своей "играбильности" и актуальности, и еще вполне могут конкурировать с современными многогигабайтными гигагерцовыми монстрами по степени интересности. Сегодня существует множество различных эмуляторов старых приставок, а китайской промышленностью по сей день выпускаются как сами приставки, так и джойстики для них.

В журнале "Радио" №1 за 2007 г. опубликована статья С.Рюмика с описанием адаптера, позволяющего подключить к шине USB компьютера до четырех джойстиков от приставок Dendy, либо до двух джойстиков от SEGA MegaDrive-II или Sony PlayStation. Автор использует микроконтроллер ATMega8-16PI в корпусе DIP для прошивки которого на плату выведен разъем ISP-интерфейса последовательного программирования.

Для работы с разным видами и разным количеством джойстиков предложен набор прошивок (всего 9 штук). Поскольку при подключении нескольких джойстиков вемя опроса увеличивается пропорционально их числу, для получения минимального времени отклика (для прошивки на один джойстик оно составляет 10мс, для двух - 20мс, для четырех - 40мс) есть смысл "заливать" именно ту прошивку, которая предназначена для этого количества джойстиков. Т.к. устройство подключается к ПК через шину USB, для смены прошивки вместо ISP-программатора очень удобно использовать USB-bootloader. Я развел печатную плату под SMD-компоненты и добавил в схему кнопку S1, которая служит для включения режима загрузчика. В результате схема адаптера выглядит так:

Схема адаптера

В качестве загрузчика был использован BootloadHID.

Схема подключения джойстиков Dendy:

Схема подключения джойстиков Dendy

Схема подключения джойстиков SEGA:

Схема подключения джойстиков SEGA

Схема подключения джойстиков Sony PlayStation:

Схема подключения джойстиков Sony PlayStation

Так выглядит плата:

Печатная плата Печатная плата

Адаптер в корпусе:

Адаптер в корпусе

Загрузчик записывается ISP-программатором, провода от которого можно подпаять к соответствующим выводам МК на печатной плате. Если в качестве программатора используется связка usbasp + avrdude, то следующей командой можно записать фьюзы:

avrdude -pm8 -cusbasp -u -Ulfuse:w:0x2e:m -Uhfuse:w:0xc8:m

Запись загрузчика:

avrdude -c usbasp -p atmega8 -U flash:w:bootloader.hex:i

После успешной установки загрузчика программатор уже не понадобится, а загрузка нужной прошивки производится командой

bootloadHID.exe <имя файла прошивки>

По ссылкам ниже можно скачать схему и разводку печатных плат в Eagle, прошивку загрузчика и прошивки адаптера для разных джойстиков. Также эти прошивки вместе с авторскими вариантами печатных плат и схемой можно загрузить с ftp-сервера журнала "Радио".


Файлы:

DownloadПрошивки, исходники, проект Eagle, загрузчик
Рейтинг: 
0
Голосов еще нет