Autorul poate fi contactat la adresa: Login pentru adresa
Interactiunea cu gamepad-ul se va face cu ajutorul butoanelor. Scopul principal e sa avem posibilitatea de a juca mai ușor jocuri care nu au nevoie de mouse. Am decis sa fac gamepad-ul pentru ca am observat ca ele de obicei se strica destul de rapid, si componentele sunt destul de greu de gasit si de inlocuit. Vreau sa incerc sa fac un gamepad de calitate buna, pret mic si usor de reparat. E util pentru ca majoritatea utilizatorilor de gamepad-uri sunt copii si parintii lor nu prea vor sa cumpere cate un gamepad in fiecare luna. in cazul in care gamepad-ul se va strica (de obicei e vorba de niste butoane), copilul le poate inlocui singur sau cu ajutorul parintilor. In felul acesta o sa observam si cresterea numarului de viitori ingineri in tara :)
Un gamepad cu 12 butoane: 4 pentru navigare, 4 pentru actiuni, 4 pentru actiuni extinse.
Schema bloc:
Numar piese | Nume piesa | Specificatii |
---|---|---|
1 | Placa de baza | Microcontroller ATMega324 |
14 | Butoane | |
2 | PCB aditional | |
Fire legatura |
Schema electrica:
Editor: Notepad++ Terminal: cmd on Windows 8.1
Librarii Folosite:
avr/io.h avr/interrupt.h avr/pgmspace.h avr/wdt.h
Detalii de implementare
Am folosit o biblioteca standard pentru HID si am setat valoarea USAGE ca 0x05 la usb HID descriptor ceea ce presupune un device de tip GAMEPAD. În main.c si twelve.c e implementata logica GAMEPAD-ului. La fiecare apasarea butoanelor se activeaza intreruperi care vor fi tratate in functie de butonul apasat.