USB-джойстик на AVR

Як і багатьом технарям, мені часто віддають (на розтерзання) стару/непрацюючу/непотрібну техніку. Абсолютна більшість цих предметів потрапляє в "бермудський трикутник" (коробка з запчастинами/ламками в кутку) або летить у смітник, але буває й так, що попадаються девайси, яким просто необхідно подарувати друге життя.

Коли в мене опинився джойстик від "Денді" (NES), першим ділом я спробував підключити його до паралельного порту (LPT) ПК, але тут мене підстерігав неприємний сюрприз - чорна пляма (кристал мікросхеми, залитий епоксидкою) виявилася несправною. Цей проект був відправлений в "долгий ящик".......

Декілька днів тому, запустивши емулятор NES, я зрозумів, що чогось не вистачає. Пошуки були продовжені, і рішення було знайдено: автор цієї сторінки пропонує, схему USB джойстика на 12 кнопок.

схема

Чудово, подумав я, цю схему можна використовувати для будь-якого "згорілого" джойстика, з кількістю кнопок менше 12-ти. Першим ділом я перепрограмував atmeg'у:

avrdude -c usbtiny -p m8 -e -V -U flash:w:usb_game12-1.0.hex
avrdude -c usbtiny -p m8 -U lfuse:w:0x9f:m -U hfuse:w:0xc9:m

Для прошивки я використовував програматор USBtiny та програму avrdude. Далі я взявся за разводку плати, разводка плати виконана в програмі Sprint-Layout.

плата

Плата розведена під мікросхему в корпусі DIP-28 та радіоелементи для стандартного (черездірочного) монтажу. Потім друкована плата була виготовлена за фоторезистивною технологією, обрізана, просверлена і зібрана (запаяна).

собрана

собрана

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

вырез

Відрізавши ніжку, я змінив диск на бор, перерізав доріжки і зняв шар маски з місць майбутньої пайки.

велика плата

Потім, я перевірив все в останній раз і припаяв дроти між двома платами.

з'єднання

Ну і фінальна збірка.

збірка

І результат старань.

результат

Джойстик готовий до роботи, під ОС Linux/Windows XP/Vista/7 установка драйверів не потрібна. Пристрій було перевірено в роботі під ОС Debian Linux та Windows XP. Джойстиком можна користуватися не лише в емуляторах старих ігрових приставок, але й у сучасних іграх, для яких вистачить кнопок.

screenshot

Але я пограю в ігри, для яких Китайці й зробили цей джойстик, приємного приступу ностальгії.

Список радіоелементів

Обозначення Тип Номінал Кількість Примітка
U2 МК AVR 8-біт
ATmega8-16PU
1
D2, D3 Стабілітрон
1N4729A
2
C1 Конденсатор 1 мкФ 1
C2, C3 Конденсатор 27 пФ 2
R1 Резистор
1.5 кОм
1
R2, R3 Резистор
68 Ом
2
Y1 Кварцовий резонатор 12 МГц 1
Додати все

Прикреплені файли:

Top