0% ont trouvé ce document utile (0 vote)
10 vues3 pages

Code Arduino Uno

Le document présente un code Arduino pour contrôler des feux de circulation sur deux voies, A-D et B-C. Il définit les pins pour chaque feu et établit un cycle de phases où les feux changent de couleur selon des délais spécifiques. Le programme initialise les pins, puis exécute une boucle pour alterner entre les états des feux.

Transféré par

kirossemmanuel3
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
10 vues3 pages

Code Arduino Uno

Le document présente un code Arduino pour contrôler des feux de circulation sur deux voies, A-D et B-C. Il définit les pins pour chaque feu et établit un cycle de phases où les feux changent de couleur selon des délais spécifiques. Le programme initialise les pins, puis exécute une boucle pour alterner entre les états des feux.

Transféré par

kirossemmanuel3
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

// Définition des pins pour la voie A–D (feu 1)

#define AD_VERT 2 // PD2

#define AD_JAUNE 3 // PD3

#define AD_ROUGE 4 // PD4

// Définition des pins pour la voie B–C (feu 2)

#define BC_VERT 10 // PB2

#define BC_JAUNE 11 // PB3

#define BC_ROUGE 12 // PB4

void setup() {

// Initialisation des pins A–D comme sorties

pinMode(AD_VERT, OUTPUT);

pinMode(AD_JAUNE, OUTPUT);

pinMode(AD_ROUGE, OUTPUT);

// Initialisation des pins B–C comme sorties

pinMode(BC_VERT, OUTPUT);

pinMode(BC_JAUNE, OUTPUT);

pinMode(BC_ROUGE, OUTPUT);

// Initialiser tout à LOW

digitalWrite(AD_VERT, LOW);

digitalWrite(AD_JAUNE, LOW);

digitalWrite(AD_ROUGE, LOW);

digitalWrite(BC_VERT, LOW);

digitalWrite(BC_JAUNE, LOW);
digitalWrite(BC_ROUGE, LOW);

void loop() {

// Phase 1 : Voie A–D Vert, Voie B–C Rouge

digitalWrite(AD_VERT, HIGH);

digitalWrite(AD_JAUNE, LOW);

digitalWrite(AD_ROUGE, LOW);

digitalWrite(BC_VERT, LOW);

digitalWrite(BC_JAUNE, LOW);

digitalWrite(BC_ROUGE, HIGH);

delay(5000); // 5 secondes vert A–D

// Phase 2 : Voie A–D Jaune, Voie B–C Rouge

digitalWrite(AD_VERT, LOW);

digitalWrite(AD_JAUNE, HIGH);

digitalWrite(AD_ROUGE, LOW);

// B–C reste rouge

delay(2000); // 2 secondes jaune A–D

// Phase 3 : Voie A–D Rouge, Voie B–C Vert

digitalWrite(AD_VERT, LOW);

digitalWrite(AD_JAUNE, LOW);

digitalWrite(AD_ROUGE, HIGH);
digitalWrite(BC_VERT, HIGH);

digitalWrite(BC_JAUNE, LOW);

digitalWrite(BC_ROUGE, LOW);

delay(5000); // 5 secondes vert B–C

// Phase 4 : Voie A–D Rouge, Voie B–C Jaune

digitalWrite(BC_VERT, LOW);

digitalWrite(BC_JAUNE, HIGH);

digitalWrite(BC_ROUGE, LOW);

// A–D reste rouge

delay(2000); // 2 secondes jaune B–C

// Retour au début du cycle

Vous aimerez peut-être aussi