Bonjour, j'ai créé un programme arduino servant à compter des niveaux dans un parcours.
Pour faire simple, à chaque fois que je presse un bouton, cela incrémente une valeur de 1 et quand cette valeur correspond à 4, cela incrémente une autre valeur de 1 et remet la première à 0.
En outre, quand je presse un autre bouton, cela remet la première valeur à 0.
Seule chose, ça déconne et les leds de l'interface clignotent dans tous les sens...
Aidez-moi SVPP! J'ai mis en pièce jointe le fichier et ai collé le code...
Merci d'avance.
Hugo Quintart
Compte_point_fpv.ino (1.7 KB)
const int greenPin = 6; // la led verte est sur la pin 6
const int yellowPin = 5; // la led jaune est sur la pin 5
const int redPin = 4; // la led rouge est sur la pin 4
const int okPin = 3; // l'entrée du bouton de validation est sur la pin 3
const int nonokPin = 2; // l'entrée du bouton de message de non validation est sur la pin 2
int comptePoint;
int niveau;
void setup() {
// paramétrer les variable
comptePoint = 0;
niveau = 1;
// paramétrer les pins
// Pins des leds
pinMode(greenPin, OUTPUT);
pinMode(yellowPin, OUTPUT);
pinMode(redPin, OUTPUT);
//Pin des boutons
pinMode(okPin, INPUT);
pinMode(nonokPin, INPUT);
//Initialiser le moniteur série
Serial.begin(9600);
}
void loop() {
// condition de comptage de point
if (digitalRead(okPin == HIGH)) {
digitalWrite(greenPin, HIGH);
Serial.println(niveau);
comptePoint + 1;
delay(500);
Serial.print(" er parcours ");
Serial.print(comptePoint);
Serial.print(" point(s)");
delay(500);
digitalWrite(greenPin, LOW);
}
if (digitalRead(nonokPin == HIGH)) {
digitalWrite(redPin, HIGH);
Serial.println(" Parcours recommencé. Cause: Raté parcours");
comptePoint = 0;
delay(500);
digitalWrite(redPin, LOW);
}
else {
}
if (comptePoint = 4) {
comptePoint = 0;
niveau + 1;
Serial.println(" Parcours Suivant ");
}
else {
}
if (niveau = 2) {
digitalWrite(yellowPin, HIGH);
Serial.println("Dernier Niveau");
}
else {
}
if (niveau == 2) {
if (comptePoint == 4) {
Serial.println(" Bravo, ");
Serial.println(" Vous avez Gagné ");
}
}
}