Étape 6: Code pour Tx1:-Adxl335 et Joystick
int inPin = 10 ; le nombre de l’axe d’entrée
int outPin = 13 ; le nombre de la broche de sortie
État int = élevé ; l’état actuel de la broche de sortie
int de lecture ; la lecture actuelle de l’axe d’entrée
int précédente = faible ; la lecture précédente de la broche d’entrée
octet com = 0 ;
int gndpin = A6 ;
const int XPSous = A2 ; axe x de l’accéléromètre
const int ypin = A3 ; axe y de l’accéléromètre
int XPSous = A0 ; j x
int ypin = A1 ; j y
int x = 0 ;
int y = 0 ;
long temps = 0 ; la dernière fois que la broche de sortie a été activé/désactivée
longtemps debounce = 200 ; le temps de debounce, augmenter si la sortie scintille
void setup()
{
pinMode (inPin, entrée) ;
pinMode (outPin, sortie) ;
pinMode (gndpin, sortie) ;
digitalWrite (gndpin, basse) ;
pinMode(5,OUTPUT) ; a11 de RF tx 1
pinMode(4,OUTPUT) ; A10
pinMode(3,OUTPUT) ; a9
pinMode(2,OUTPUT) ; a8
pinMode (6, sortie) ;
pinMode (7, sortie) ;
pinMode (sortie 8) ;
pinMode (sortie 9) ;
Serial.Begin(9600) ;
}
void loop()
{
lire = digitalRead(inPin) ;
Delay(200) ;
Si (lecture == HIGH & & précédente == LOW & & millis() - temps > debounce) {}
Si (État == HIGH)
État = faible ;
d’autre
État = élevé ;
temps = millis() ;
}
digitalWrite (outPin, state) ;
précédent = lecture ;
if(digitalRead (outPin) == HIGH)
{
Si ((analogRead(ypin) > 400) & &(analogRead(xpin) Serial.println('1');
digitalWrite(2,LOW) ; 5
digitalWrite(3,HIGH) ; 6
digitalWrite(4,HIGH) ; 10
digitalWrite(5,LOW) ; 11
}
else if ((analogRead(ypin)940) & &(analogRead(ypin)>400)) {/ / vers l’arrière
Serial.println('2') ;
digitalWrite(2,HIGH) ; 5
digitalWrite(3,LOW) ; 6
digitalWrite(4,LOW) ; 10
digitalWrite(5,HIGH) ; 11
}
else if ((analogRead(ypin)400) & &(analogRead(xpin) Serial.println('4');
digitalWrite(2,LOW) ; 5
digitalWrite(3,LOW) ; 6
digitalWrite(4,LOW) ; 10
digitalWrite(5,HIGH) ; 11
}
else if ((analogRead(ypin) > 900) & & (analogRead(xpin)400)) {/ / droite
Serial.println('6') ;
digitalWrite(2,LOW) ;
digitalWrite(3,HIGH) ;
digitalWrite(4,HIGH) ;
digitalWrite(5,HIGH) ;
}
else if ((analogRead(ypin) > 400) & & (analogRead(xpin)440)) {/ / stop
Serial.println('0') ;
digitalWrite(2,HIGH) ;
digitalWrite(3,HIGH) ;
digitalWrite(4,HIGH) ;
digitalWrite(5,HIGH) ;
}
}
d’autre if(digitalRead (outPin) == faible)
{
x = analogRead(A4) ;
y = analogRead(A5) ;
Delay(200) ;
Si (((x240)) & & ((y>300) & & (y {}
Serial.println('1') ;
digitalWrite(2,LOW) ; 5
digitalWrite(3,HIGH) ; 6
digitalWrite(4,HIGH) ; 10
digitalWrite(5,LOW) ; 11
}
else if (((x360)) & & ((y>305) & & (y {}
Serial.println('2') ;
digitalWrite(2,HIGH) ; 5
digitalWrite(3,LOW) ; 6
digitalWrite(4,LOW) ; 10
digitalWrite(5,HIGH) ; 11
}
else if (((y370)) & & ((x>320) & & (x Serial.println('4') ;
digitalWrite(2,LOW) ; 5
digitalWrite(3,LOW) ; 6
digitalWrite(4,LOW) ; 10
digitalWrite(5,HIGH) ; 11
}
else if (((x280)) & & ((y>240) & & (y {}
Serial.println('6') ;
digitalWrite(2,LOW) ;
digitalWrite(3,HIGH) ;
digitalWrite(4,HIGH) ;
digitalWrite(5,HIGH) ;
}
else if (((x300)) & & ((y>300) & & (y {}
Serial.println('0') ;
digitalWrite(2,HIGH) ;
digitalWrite(3,HIGH) ;
digitalWrite(4,HIGH) ;
digitalWrite(5,HIGH) ;
}
}
}