Conta sul display
Fa parte della sezione Display e sensori del percorso Arduino di Coddy. Lezione 3 di 24.
Con showDigit(), una cifra corrisponde a una chiamata di funzione. Un ciclo for può chiamarla a turno con ogni numero:
for (int n = 0; n <= 9; n++) {
showDigit(n);
delay(500);
}La condizione stabilisce l’ultimo numero. n <= 9 arriva fino a 9 incluso; n < 9 si ferma a 8.
Inserisci il ciclo dentro loop() e, quando il conteggio termina, loop() viene eseguita di nuovo e il conteggio ricomincia da 0.
Sfida
FacileshowDigit() è pronta. Conta sul display:
- mostra 0, 1, 2 e così via fino a 9
- mantieni ogni numero acceso per 500 ms
- dopo 9, ricomincia da 0
Premi Run per guardarlo contare, poi Check.
Provalo tu
const int segmentPins[7] = {2, 3, 4, 5, 6, 7, 8}; // a, b, c, d, e, f, g
// Un pattern per cifra, da leggere da destra: l'ultimo bit corrisponde al segmento a.
// gfedcba
const byte digits[10] = {
0b0111111, // 0
0b0000110, // 1
0b1011011, // 2
0b1001111, // 3
0b1100110, // 4
0b1101101, // 5
0b1111101, // 6
0b0000111, // 7
0b1111111, // 8
0b1101111 // 9
};
void showDigit(int n) {
for (int i = 0; i < 7; i++) {
if (bitRead(digits[n], i) == 1) {
digitalWrite(segmentPins[i], LOW); // acceso
} else {
digitalWrite(segmentPins[i], HIGH); // spento
}
}
}
void setup() {
for (int i = 0; i < 7; i++) {
pinMode(segmentPins[i], OUTPUT);
}
}
void loop() {
// mostra le cifre da 0 a 9, per mezzo secondo ciascuna
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Display e sensori
1Display a sette segmenti
Display a sette segmentiSchemi delle cifre nei byteConta sul displayConto alla rovescia fino a zeroLancio dei dadiEsercitati da solo: Playground Arduino