bonjour je fait un petit testeur de faisceau, le principe j'utilise les ports de 7 à 11 pour recevoir le 5v que je branche le fil ou pas sur la carte arduino uno, mon probléme est que le test n'est pas concluant a chaque fois, des fois je branche aucun fils il m'alllume des leds ou toutes.
Par contre sur le simulateur 'tinkercad' c'est impecable à tous les coups.
merci pour toutes infos.
j'ai mis le code et un plan de cablage
int etatBouton;
void setup () {
Serial.begin(9600);
for (byte j = 2 ; j <= 6 ; j++) {
pinMode (j, OUTPUT) ; ; // parametres led
}
for (byte i = 9 ; i <= 13 ; i++) {
pinMode (i, INPUT) ; // ports pour tester arrivee 5v
}
for (byte j = 2 ; j <= 6 ; j++) {
digitalWrite (j, HIGH) ; // éteint les DEL reliée à la broche j
}
}
// Fonction loop
void loop () {
for (byte i = 9 ; i <= 13 ; i++) {
etatBouton = digitalRead(i); // lit si il y a 5v sur le port
if (etatBouton == 0) {
Serial.print("non : ");
Serial.print(i);
Serial.print(" ");
Serial.println(etatBouton);
for(int compteur = 0 ; compteur < 3 ; compteur++) // boucle pour faire clignoter la led concernée par le fil non branché
{
digitalWrite (i-7, LOW) ;
delay (200) ;
digitalWrite (i-7, HIGH) ;
delay (200) ;
}
delay (1000) ;
}else{
Serial.print("oui : ");
Serial.print(i);
Serial.print(" ");
Serial.println(etatBouton);
digitalWrite (i-7, LOW) ; // allume led fil concerné
delay (1000) ;
}
}
for (byte j = 2 ; j <= 6 ; j++) {
digitalWrite (j, HIGH) ; // eteint la led
}
delay (2000) ;
// Recommence la séquence
}