INHOUDSOPGAWE:
- Stap 1: Soldeerpenkoppe na die bykomende I/O -poorte van die Arduino
- Stap 2: Voeg die Arduino Joystick -biblioteek by u IDE
- Stap 3: Flits die kode op die Arduino
- Stap 4: Doen die bedrading
- Stap 5: Bind die ontvanger
- Stap 6: Pas die kode aan by u omstandighede
- Stap 7: Kalibreer die geëmuleerde joystick
Video: R/C na USB -brug: 7 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
Skakel PPM -seine van 'n radioontvanger om in joystick -posisies
Gebruik dit om u gunsteling speletjies en vlugsimulators met u R/C -radiosender te speel. Hierdie instruksies gebruik 'n Arduino van littleBits en 'n DSMX -ontvanger plus 'n eenvoudige kodefragment om hierdie omskakeling te maak.
Jy sal nodig hê
- Krag
- Arduino
- USB kabels
- penkoppe
- springdraad
- 'n radio -ontvanger met PPM -uitset.
Stap 1: Soldeerpenkoppe na die bykomende I/O -poorte van die Arduino
Om die ontvanger (RX) aan te skakel, moet penkopstukke by die Arduino gevoeg word. Dit sal ook die bedrading tussen die Bit en die RX baie makliker maak. Sien https://discuss.littlebits.cc/t/using-the-additional-i-os-on-the-arduino-bit vir meer inligting.
Stap 2: Voeg die Arduino Joystick -biblioteek by u IDE
U kan die biblioteek vind op GitHub, https://github.com/MHeironimus/ArduinoJoystickLib… Dankie, Matthew Heironimus, dat u dit geskryf het.
Slegs sekere Arduinos kan 'n HID soos 'n joystick navolg. Aangesien die LittleBits -mikrobeheerder 'n Arduino Leonardo in sy hart is, is u gereed om te gaan.
Stap 3: Flits die kode op die Arduino
#include #define inputPin 16#definieer kanale 4 #define lo 800 // pas by uitvoer van RX aan#definieer hi 1600 // pas by uitvoer van RX#definieer filter 10int kanaal [kanale]; int vorige waarde [kanale]; int counter = 0; Joystick_ Joystick (JOYSTICK_DEFAULT_REPORT_ID, JOYSTICK_TYPE_MULTI_AXIS, 0, 0, true, true, false, false, false, true, true, false, false, false); void setup () {Joystick.setXAxisRange (lo, Hi); Joystick.setYAxisRange (lo, hi); Joystick.setThrottleRange (lo, hi); Joystick.setRudderRange (lo, hi); Joystick.begin (); Serial.begin (9600); pinMode (inputPin, INPUT); } leemte-lus () {if (pulseIn (inputPin, HIGH)> 3000) {vir (int i = 0; i <= channel-1; i ++) {channel = pulseIn (inputPin, HIGH); } vir (int i = 0; i <= channel-1; i ++) {if ((channel > 2000) || (channel <500)) {channel = previousValue ; } anders {kanaal = (vorige waarde +kanaal )/2; toonbank ++; }} Joystick.setXAxis (kanaal [0]); Joystick.setYAxis (kanaal [1]); Joystick.setThrottle (kanaal [2]); Joystick.setRudder (kanaal [3]); } if (teller> filter) {vir (int i = 0; i <= channel-1; i ++) {Serial.print ("channel"); Serial.print (i+1); Serial.print (":"); Serial.println (kanaal ); vorige waarde = kanaal ; } teller = 0; }}
Let daarop dat die kode wat tussen die R/C -sein en die geëmuleerde USB HID oorbrug, in sy eenvoudigste vorm kom. Die funksie wat hier gebruik word - pulseIn - is 'n blokkeringsfunksie. Lees hier en hier hoe u 'n nie-blokkerende benadering met behulp van onderbrekings kan implementeer.
Stap 4: Doen die bedrading
Verbind jumperdraad / DuPont -kabels tussen die Bit en die RX. Die verbindings aan die einde van hierdie kabels moet vroulik wees. Ons verbind GND (blou), VCC (bruin) en sein (oranje) vanaf die PPM -poort van die RX met GND, VCC en d16 op die Arduino.
Stap 5: Bind die ontvanger
Ontkoppel die Arduino van krag. Plaas die bindingsharnas in die aansluitplek gemerk BIND op die RX. Skakel u radiosender aan en skakel dit in die bindmodus. Pas dan die krag op die Arduino toe. Die bindproses was suksesvol toe die LED in die ontvanger aanskakel.
Stap 6: Pas die kode aan by u omstandighede
Die konstantes hi en lo in die Arduino -skets moet verander word om die werklike uitset van die ontvanger wat u gebruik weer te gee.
#definieer lo 800
#definieer hi 1600
Die seine binne die PPM -pols wissel ideaal van 1000μs tot 2000μs. Die RX wat in hierdie Instrueerbare uitsette gebruik word, is ongeveer 800 tot 1600 en verskil effens op elke kanaal. Om uit te vind watter reeks u ontvanger het, maak die Serial Monitor in die Arduino IDE oop om die uitvoer van u RX te sien. Dit sal so lyk:
kanaal 1: 728
kanaal 2: 729 kanaal 3: 703 kanaal 4: 726 kanaal 1: 1681 kanaal 2: 1639 kanaal 3: 1613 kanaal 4: 1676
Sodra u 'n duideliker idee het van die omvang wat u RX -uitsette lewer, kies dan goeie benaderings vir hi en lo en verander die konstantes dienooreenkomstig. Laai die skets dan weer op na die Arduino.
Stap 7: Kalibreer die geëmuleerde joystick
Koppel die toestel aan op u rekenaar en gebruik die kalibrasiefunksie van u bedryfstelsel om die geëmuleerde joystick te kalibreer. 'N Goeie hulpmiddel vir Linux is jstest-gtk.
Verdere verbeterings
- Skryf 'n kode wat nie blokkeer nie (sien stap 3)
- Stel reekse per kanaal, nie wêreldwyd nie (sien stap 6)
Verdere leeswerk
- Redcon CM703
- PPM
Aanbeveel:
Hoe om 'n USB -stick te maak met 'n uitveër - DIY USB Drive Case: 4 stappe
Hoe om 'n USB -stick te maak met 'n uitveër | DIY USB Drive Case: Hierdie blog handel oor " Hoe om 'n USB -flash drive te maak met 'n gum | DIY USB Drive Case " Ek hoop jy sal daarvan hou
Verander 'n gewone USB -stick in 'n veilige USB -stick: 6 stappe
Verander 'n gewone USB -stick in 'n veilige USB -stick: in hierdie instruksies leer ons hoe om 'n gewone USB -stick in 'n veilige USB -stick te verander. Alles met standaard Windows 10 -funksies, niks spesiaals en niks ekstra om aan te koop nie. Wat u benodig: 'n USB -duim -skyf of -stokkie. Ek beveel getti aan
NODEMcu USB -poort werk nie? Laai die kode met behulp van USB op na TTL (FTDI) -module in slegs 2 stappe: 3 stappe
NODEMcu USB -poort werk nie? Laai die kode op met behulp van USB na TTL (FTDI) -module in slegs 2 stappe: moeg om met baie drade van USB na TTL -module aan te sluit op die NODEMcu, volg hierdie instruksies om die kode in slegs 2 -stap op te laai. NODEMcu werk nie, en moenie paniekerig raak nie. Dit is net die USB -bestuurder -chip of die USB -aansluiting
Maklike 5 minute USB sonlaaier/oorlewing USB laaier: 6 stappe (met foto's)
Maklike 5 minute USB sonlaaier/oorlewing USB laaier: Hallo ouens! Ek het vandag (waarskynlik) die maklikste usb -sonpaneellaaier gemaak! Eerstens, ek is jammer dat ek nie 'n paar instruksies vir julle opgelaai het nie. Maar
DIY USB -laai -USB met battery: 6 stappe (met foto's)
DIY Solar Charging USB W/ Battery: In hierdie instruksies leer u hoe u 'n stroombaan ontwerp en bedraad waarmee u die son se krag kan benut om u telefoon op te laai en 'n battery te laai vir later gebruik