Arduino - 15

# Visualizziamo una cifra

- Il dipsplay a 7 segmenti nasce per visualizzare delle cifre
- Accendendo opportunamente i vari segmenti del display potremo rappresentare tutte le 10 cofre decimali dallo 0 a 9 oltre alle lettere da a ad f per rappresentare una cifra decimale o esadecimale
- Per questo nuovo programma partiremo dal precedente, che già contiene l'inizializzazione e la definizione dei dati
- Per semplificare il lavoro, definisco una matrice di costanti boolean che, per ognuna delle cifre esadecimali da 0 a f indichi quali dei segmenti accendere (true) o spegnere (false)
- Scriveremo ora una funzione void digit (int n) che, dopo aver limitato il numero passato come parametro al campo da 0 a f, lo visualizzerà sul display.
- Per fare questo farà un semplice ciclo for sulle colonne della riga il cui indice è la cifra da rappresentare, accendendo (true) o spegnendo (false) il piedino corrispondente al segmento, il cui indice deriva dal vettore della volta scorsa.
- Per decidere se accendere o spegnere il piedino utilizzo l'operatore ternario del C, quindi la riga che esegue il lavoro diventa: digitalWrite(segments , (cifre[n]) ? LOW : HIGH); dove ovviamente n è la cifra da visualizzare, mentre i è il segmento corrente (0 = a, 6 = g)
- Completeremo il tutto con un semplice ciclo for, nella funzione loop(), che richiami la nostra funzione per le cifre da 0 a 15, con intervallo di mezzo secondo

Visualizza Sorgente “esempio_06_conteggio.ino” Scarica sorgente “esempio_06_conteggio.ino”
© Ing. Stefano Salvi - released under FDL licence