RF Joystick för Arduino (1 / 2 steg)
Steg 1: sändare
Denna skiss skickar antingen numret 1,2,3,4 eller 5 beroende på joysticken position och kommer det bara skicka
ett tal om det skiljer från tidigare nummer det läsa från joysticken. Skickas det med "Digital Pin 10" och använda kommandot "mySwitch.send (pos, 23);". "23" är oviktigt i dessa exempel flera men de kunde användas för att avgöra vilken signal kommer att som mottagare om det fanns mer än en.
RF kontrollerade Joystick
Innan detta exempel kommer att fungera måste du träna din joysticks "död zon", dessa är horisontella och vertikala värdena för styrspak när det inte är i bruk. I koden ersätta "Värde" med 0, köra och sedan selct Verktyg menyn i Arduino programvara och välj Serial Monitor, detta kommer att ge dig de två värdena. Stoppa programmet och ersätta de två 0 med dessa värden.
Hardware Setup sändare
I det här exemplet måste vi leder fyra "kvinnliga till male" jumper de första går från "Jord" till "Jord" de andra går från "VCC" till "5v". Den tredje "HOZ" till "AO" och slutligen "VER" till "A1". Nu ansluta sändaren. För det första använder en "kvinnliga till male" mellankabel ansluta "GND" till "Jord" på vänstra sidan av styrelsen bredvid "Digital Pin 13". För det andra med en "Kvinna till kvinna" bygeln leda ansluter "VCC" till den översta vänstra "5v" header stiftet. Slutligen använder en "kvinnliga till male" mellankabel ansluta "ATATRK/DATA" PIN-koden till "Digital Pin 10". Du har nu konfigurerat att skicka data trådlöst.
Arduino kod sändaren kod
#include < RCSwitch.h >
RCSwitch mySwitch = RCSwitch();
int hozdead = värde;
int verdead = värde;
int pos = 0;
int oldpos = 100;
int val = 0;
int värde2 = 0;
void setup() {
Serial.BEGIN(9600);
mySwitch.enableTransmit(10);
}
void loop() {
Läs JoyStick
Val = analogRead(0);
värde2 = analogRead(1);
Serial.println(val);
Serial.println(val2);
UPP 1
om (val > verdead + 30) {pos = 1; Serial.println(POS);}
NER 2
om (val < verdead-30) {pos = 2; Serial.println(POS);}
HÖGER 3
om (värde2 > hozdead + 30) {pos = 4; Serial.println(POS);}
LEFT 4
om (värde2 < hozdead-30) {pos = 3; Serial.println(POS);}
DÖD ZON 5
om (val > verdead-20 & & val < verdead + 20 & & värde2 > hozdead-20 & & värde2 < hozdead + 20)
{
POS = 5; Serial.println(POS);
}
mySwitch.send (pos, 23);
}
Nu låt oss göra en mottagare!