Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Arduino-gamecontroller

Componenten en benodigdheden

SparkFun Pro Micro - 5V/16MHz
× 1
Arduino Leonardo
× 1
SparkFun Drukknopschakelaar 12 mm
× 12
Weerstand 10k ohm
× 1
Aangepaste geëtste PCB
× 1
UTSOURCE elektronische onderdelen
× 1

Benodigde gereedschappen en machines

IJzer(II)chloridepoeder
3D-printer (algemeen)
Boormachine / stuurprogramma, draadloos

Apps en online services

Arduino IDE
Autodesk Fusion 360

Over dit project

VIDEO

INTRO

DUS dit bericht gaat over een "DIY Gaming USB Controller" waar we onlangs aan hebben gewerkt bij ElectroPunkz Labs.

het idee hier is om een ​​goedkope op Atmega32U gebaseerde USB-controller te maken met knoppen en analoge joysticks die kunnen worden gebruikt om games te spelen

zoals NFS, GTA, halfwaardetijd, LITTLE FIGHTER 2! enz.

We hebben onze controller in twee vormfactoren gemaakt, de eerste is gebaseerd op PS1- of SNES-configuratie en de andere is een rechtstreekse Xbox USB-controller met analoge sticks en knoppen (nog niet voltooid)

We gaan V1 maken in dit bericht, de PS1-lay-outcontroller!

Het is beter om de Video First-

. van het project te bekijken

MATERIALEN

de hardware is vrij eenvoudig en gemakkelijk te verkrijgen (behalve de PCB, je kunt er zelf een maken met het bijgevoegde PDF-bestand van PCB)

  • Arduino Leonardo/ Pro Micro/ Atmega32U
  • Knoppen (tick tack-schakelaars)
  • Aangepaste geëtste PCB (knopmatrix PDF is bijgevoegd)
  • 10K Weerstanden
  • Jumperdraden

Bedankt UTSOURCE.net om elektronische componenten voor dit project aan te bieden! je kunt op UTSOURCE.net kijken, ze handelen in allerlei elektronische componenten zoals bijvoorbeeld alle componenten die in dit project worden gebruikt!

GEBOUWD PROCES (bedrading, montage , enz.)

Het eerste dat we moeten doen, is de basisconfiguratie voorbereiden, die in feite 12 drukknoppen is die in pull-downconfiguratie zijn verbonden met een Pro Micro, in feite dit-

we hebben dit getest op een breadboard en vervolgens een PCB geprepareerd volgens het bovenstaande schema.

Na het maken van de PCB (in OrCad-cadans) hebben we de PDF van de TOP Layer op glanzend papier afgedrukt.

Ik sneed het glanzende papier in overeenstemming met de PCB-vorm en plaats het op een met koper bekleed bord en breng er warmte op aan voor het overbrengen van de inkt van glanzend papier naar het met koper beklede bord. (Basismethode voor toonoverdracht, bekijk mijn video over dit onderwerp)

Nadat we de PCB klaar hadden, lieten we hem in een etsoplossing vallen en etsen we de PCB, daarna hebben we alleen gaten geboord voor componenten en onze DIY GAME CONTROLLER PCB was klaar!

Daarna hebben we gewoon alles erop gezet volgens het schema en de schakeling was klaar.

Nadat we het circuit gereed hadden gemaakt, hebben we de PCB-behuizing/behuizing voor de controller in Fusion360 ontworpen en in 3D geprint.

Nu hoeven we alleen nog maar de code te uploaden en er wat spelletjes mee te spelen.

CODE

Upload de code die op uw Pro Micro is geleverd.

advies, test eerst je board/setup grondig, controleer de weerstand en connectiviteit van PCB-sporen, want als er iets ontbreekt, zou dit veel toetsenbordfouten veroorzaken omdat ontbrekende grondlijnen onregelmatige signalen naar de pinnen sturen en je pro micro blijft door op willekeurige toetsen te drukken, wat het herprogrammeren van de Pro micro erg moeilijk maakt.

TESTEN

Het eerste dat u hoeft te doen, is Kladblok openen, op de toetsen van uw Controller drukken en controleren of de toetsen op de pers de juiste woorden weergeven die zijn toegewezen

of gebruik gewoon een willekeurige toetsenbordtest-app of web-app.

Als alles volgens de code werkt, open dan een willekeurig spel en speel het met deze DIY GAMING CONSOLE!

bekijk de video-

VERDERE VERBETERINGEN

Welnu, het eerste dat ik aan deze opstelling ga toevoegen, zijn analoge joysticks voor het spelen van goede games die een muis gebruiken om de speler te navigeren, een beetje zoals XBOX ONE CONSOLE.

V2 heeft een goede PCB met XBOX One Controller Layout, dus houd ons daarvoor in de gaten.

Laat een reactie achter als jullie een probleem hebben!

Code

  • CODE
CODEC/C++
#include int WPin =2; // UP int SPin =3; // DOWNint APin =4; //LEFT int DPin =5; //RIGHTint UPLpin =7; //linksboven Qint UPRpin =9; // rechtsbovenint Xpin =14;//xint Apin =10; //iint Ypin =15;//yint Bpin =16;//bvoid setup(){ pinMode(WPin, INPUT); pinMode (SPin, INPUT); pinMode (APin, INPUT); pinMode (DPin, INPUT); pinMode (UPLpin, INPUT); pinMode (UPRpin, INPUT); pinMode (Xpin, INPUT); pinMode (Apin, INPUT); pinMode (Ypin, INPUT); pinMode (Bpin, INGANG); digitalWrite(WPin, HOOG); digitalWrite (SPin, HOOG); digitalWrite (APin, HOOG); digitalWrite (DPin, HOOG); digitalWrite (UPLpin, HOOG); digitalWrite (UPRpin, HOOG); digitalWrite (Xpin, HOOG); digitalWrite (Apin, HOOG); digitalWrite (Ypin, HOOG); digitalWrite (Bpin, HOOG); Toetsenbord.begin(); }void loop(){ if (digitalRead(WPin) ==0) { Keyboard.write('W'); vertragingMicroseconden(1); } if (digitalRead(SPin) ==0) { Keyboard.write('S'); vertragingMicroseconden(1); } if (digitalRead(APin) ==0) { Keyboard.write('A'); vertragingMicroseconden(1); } if (digitalRead(DPin) ==0) { Keyboard.write('D'); vertragingMicroseconden(1); } if (digitalRead(UPLpin) ==0) { Keyboard.write('q'); vertragingMicroseconden(1); } if (digitalRead(UPRpin) ==0) { Keyboard.write('e'); vertragingMicroseconden(1); } if (digitalRead(Xpin) ==0) { Keyboard.write('x'); vertragingMicroseconden(1); } if (digitalRead(Apin) ==0) { Keyboard.write('i'); vertragingMicroseconden(1); } if (digitalRead(Ypin) ==0) { Keyboard.write('y'); vertragingMicroseconden(1); } if (digitalRead(Bpin) ==0) { Keyboard.write('b'); vertragingMicroseconden(1); }} 

Aangepaste onderdelen en behuizingen

Schema's


Productieproces

  1. Arduino-gyroscoopspel met MPU-6050
  2. Arduino digitale dobbelstenen
  3. Arduino Nano Tetris-spel op zelfgemaakte 16x8 Matrix
  4. Arduino-aangedreven waterfles
  5. Pixel Chaser-game
  6. Arduino Home Controller geactiveerd door Alexa
  7. NeoMatrix Arduino Pong
  8. Smart Hand Glove
  9. DIY Arduino 1D Pong-spel met WS2812 LED-strip
  10. Arduino DMX-512-testcontroller
  11. LED-roulettespel