Questo progetto simula il funzionamento di un semaforo con chiamata da parte di un pedone; nell’approssimarsi del divieto di attraversamento, il pedone riceve una segnalazione acustica.
Componenti:
- 8 cavetti MM
- 2 LED verde
- 2 LED giallo
- 2 LED rosso
- 1 cicalino
- 1 pulsante
- 1 resistenza di 100 Ω
- 6 resistenze di 220 Ω
- 1 resistenza di 10 kΩ
- 12 cavetti MM
Le fasi:
-
AUTO LED verde + - LED giallo + - LED rosso + - PEDONE LED verde + - LED giallo + - LED rosso + -
Il codice
int pulsante;
int verde_auto = 8;
int giallo_auto = 9;
int rosso_auto = 10;
int verde_pedone = 11;
int giallo_pedone = 12;
int rosso_pedone = 13;
int cicalino = 7;
void setup() {
for (int i = 7; i < 14; i++) {
pinMode(i, OUTPUT);
digitalWrite(i, LOW);
}
pinMode(2, INPUT); //pulsante
}
void loop() {
noTone(cicalino);
digitalWrite(verde_auto, HIGH); // ON
digitalWrite(rosso_pedone, HIGH); // ON
pulsante = digitalRead(2);
if (pulsante == HIGH) {
delay[2000];
digitalWrite(verde_auto, LOW); //OFF
digitalWrite(giallo_auto, HIGH); // ON
delay (4000);
digitalWrite(giallo_auto, LOW ); // OFF
digitalWrite(rosso_auto, HIGH); // ON
digitalWrite(verde_pedone, HIGH ); // ON
digitalWrite(rosso_pedone, LOW); // OFF
tone(7, 100);
delay(4000);
digitalWrite(verde_pedone, LOW); // OFF
digitalWrite(giallo_pedone, HIGH); // ON
tone(cicalino, 200);
delay(2000);
digitalWrite(giallo_pedone, LOW); // OFF
digitalWrite(rosso_auto, LOW); // OFF
}
}