Per visualizzare il livello della batteria sul display creeremo la funzione Livello batteria(), che ci permetterà di vedere sulla parte alta a destra dello schermo lo stato della pila.
Per prima cosa facciamo 8 array chiamati: batteria_1, batteria_2, batteria_3, batteria_4, batteria_5, batteria_6, batteria_7, batteria_8 e simbolo_USB, ognuno dei quali rappresenterà un livello di carica della batteria.
Per poter leggere il voltaggio della pila utilizzeremo un partitore di tensione, che fornirà al pin analogico di arduino una tensione pari alla metà dell’ alimentazione.
La formula per svolgere il calcolo è molto semplice:
A1 = [ R2 / ( R1 + R2 ) ] * Vcc
Nel nostro caso avremo
A1 = [ 82000 / ( 82000 + 82000 ) ] * 9 = 4,5V
Per poter sapere la tensione, saremo obbligati ad utilizzare questo circuito, perché i pin analogici di arduino supportano massimo 5V, e collegandone 9 avremmo probabilmente bruciato il microcontrollore.
Una volta finito il circuito completiamo la funzione, nella quale, per prima cosa,leggeremo il valore della tensione compreso tra 0-1023 e tramite una proporzione (map), convertiremo questo risultato in valori compresi tra 0-8 (variabile “batteria”), successivamente ci basterà assegnare ad ognuno di essi uno degli array precedenti.
Questa funzione ci permette anche, di capire se il cellulare è alimentato tramite USB, mostrandoci quest’icona, in alto a destra del display.
Sapendo quanto valgono 5V (più o meno 530-541), mettiamo un if, che fa comparire l’immagine a sinistra solamente quando collego l’USB.