Già in passato ho avuto necessità di Convertire bitmap in PROGMEM per poter utilizzare nel codice arduino delle BMP.
In questi giorni ho sperimentato, per la prima volta, con il display e-paper della waveshare ed Arduino MKR1010 ed ho avuto la necessità di eseguire tale conversione.
Primo step creazione dell’immagine BMP
La scelta dell’immagine è stata semplice in quanto sono partito dal mio logo:
ed ho solo eseguito un passaggio con un programma di grafica vettoriale per eliminare le sfumature e salvare nel formato corretto il file.
Il risultato di questo primo passaggio è:
una immagine 200×200 pixel come la risoluzione del display su cui sarà visualizzata.
Convertire bitmap in PROGMEM
Passa adesso a convertire bitmap in PROGMEM usando il tool online messo a disposizione da http://www.andrewlowndes.co.uk, ecco il link: arduboy
nel quale puoi selezionare il tuo file bmp e le opzioni di conversione come:
- la scala
- il fattore di conversione
- la mappa
- i blocchi
e vederne l’anteprima ed il codice da inserire nella PROGMEM del codice Arduino.
Usando questa tecnica puoi realizzare facilmente delle schermate e degli sfondi da usare con un display TFT o e-paper e su cui aggiungere e personalizzare dinamicamente i dati da visualizzare.
Nel primo esempio, di cui leggerai nei prossimi giorni, è presente un contatore in formato orario ( mm:ss ) relativo al tempo trascorso dall’accensione del dispositivo:
nota che in questa foto il display non è alimentato, in quanto, come sai, i display di questo tipo necessitano dell’alimentazione solo al momento della creazione dell’immagine e poi vanno in risparmio di energia.
Avrai in questo modo dispositivi in grado di visualizzare i tuoi dati per un lungo periodo di tempo anche in presenza di scarsa alimentazione o addirittura nulla.