Stap 6: Code voor Tx1:-Adxl335 en Joystick
int inPin = 10; het nummer van de invoer pin
int outPin = 13; het nummer van de uitgang-pins
int staat = hoog; de huidige status van de uitgang-pins
int lezen; de huidige lezing van de invoer pin
int vorige = laag; de vorige lezing van de invoer pin
byte com = 0;
int gndpin = A6;
Const int xpin = A2; x-as van de versnellingsmeter
Const int ypin = A3; y-as van de versnellingsmeter
int xpin = A0; j x
int ypin = a1 worden verkregen; j y
int x = 0;
int y = 0;
lange tijd = 0; de laatste keer dat de uitgang-pins was van een knevel gevoorzid
lang debounce = 200; de tijd dat ontdendering, verhogen als de uitvoer flikkert
VOID Setup
{
pinMode (inPin, INPUT);
pinMode (outPin, uitvoer);
pinMode (gndpin, OUTPUT);
digitalWrite (gndpin, laag);
pinMode(5,OUTPUT); A11 voor RF tx 1
pinMode(4,OUTPUT); A10
pinMode(3,OUTPUT); A9
pinMode(2,OUTPUT); A8
pinMode (6, OUTPUT);
pinMode (7, OUTPUT);
pinMode (8, OUTPUT);
pinMode (9, OUTPUT);
Serial.begin(9600);
}
void loop
{
lezen = digitalRead(inPin);
delay(200);
Als (lezen == HIGH & & eerdere lage == & & millis() - tijd > debounce) {}
Als (staat == HIGH)
staat = laag;
anders
staat = hoog;
tijd = millis();
}
digitalWrite (outPin, staat);
vorige = lezing;
if(digitalRead (outPin) == HIGH)
{
Als ((analogRead(ypin) > 400) & &(analogRead(xpin) Serial.println('1');
digitalWrite(2,LOW); 5
digitalWrite(3,HIGH); 6
digitalWrite(4,HIGH); 10
digitalWrite(5,LOW); 11
}
anders als ((analogRead(ypin)940) & &(analogRead(ypin)>400)) {/ / achterwaarts
Serial.println('2');
digitalWrite(2,HIGH); 5
digitalWrite(3,LOW); 6
digitalWrite(4,LOW); 10
digitalWrite(5,HIGH); 11
}
anders als ((analogRead(ypin)400) & &(analogRead(xpin) Serial.println('4');
digitalWrite(2,LOW); 5
digitalWrite(3,LOW); 6
digitalWrite(4,LOW); 10
digitalWrite(5,HIGH); 11
}
anders als ((analogRead(ypin) > 900) & & (analogRead(xpin)400)) {/ / rechts
Serial.println('6');
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
}
anders als ((analogRead(ypin) > 400) & & (analogRead(xpin)440)) {/ / stop
Serial.println('0');
digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
}
}
anders if(digitalRead (outPin) == laag)
{
x = analogRead(A4);
y = analogRead(A5);
delay(200);
Als (((x240)) & & ((y>300) & & (y {}
Serial.println('1');
digitalWrite(2,LOW); 5
digitalWrite(3,HIGH); 6
digitalWrite(4,HIGH); 10
digitalWrite(5,LOW); 11
}
anders als (((x360)) & & ((y>305) & & (y {}
Serial.println('2');
digitalWrite(2,HIGH); 5
digitalWrite(3,LOW); 6
digitalWrite(4,LOW); 10
digitalWrite(5,HIGH); 11
}
anders als (((y370)) & & ((x>320) & & (x Serial.println('4');
digitalWrite(2,LOW); 5
digitalWrite(3,LOW); 6
digitalWrite(4,LOW); 10
digitalWrite(5,HIGH); 11
}
anders als (((x280)) & & ((y>240) & & (y {}
Serial.println('6');
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
}
anders als (((x300)) & & ((y>300) & & (y {}
Serial.println('0');
digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
}
}
}