Utilizzare un display I2C LCD SSD1306 con Arduino

Utilizzare un display I2C LCD SSD1306 con Arduino

Per alcuni dei nostri progetti potrebbe tornarci utile utilizzare un display in modo da poter visualizzare temperatura, umidità, o qualsiasi altra cosa ci passa per la testa e, nel post di oggi, vedremo come Utilizzare un display I2C LCD SSD1306 con Arduino Nano.
In commercio ci sono diversi modelli di display utilizzabili con le board Arduino, quello che utilizzeremo in questo progetto è un OLED LCD I2C 0.96″ 128×64 Pixel con Chip SSD1306.


Utilizzare un display I2C LCD SSD1306 con Arduino

Materiale occorrente

Per la realizzazione ci servono i pochi materiali elencati di seguito:

materiale occorrente

Panoramica sul Display LCD I2C 0.96 128×64 Pixel con Chip SSD1306

Sono disponibili diverse versioni del display, di varie dimensioni e di diverso colore.
Oltre alla versione con interfaccia I2C (utilizzata per questa guida) è disponibile anche la versione con interfaccia SPI.

Queste alcune specifiche:

  • Risoluzione: 128 x 64
  • Angolo di visione 160°
  • Consumo massimo: 0.08W ± a pieno schermo illuminato
  • Voltaggio: 3V ~ 5V DC
  • Dimensioni: 26.7 (W) x 19.26 (H) mm (2)

Display OLED I2C SSD1306

Montaggio e collegamenti

Effettuiamo i collegamenti tra il Display e il micro-controllore come mostrato nella tabella seguente:

COLLEGAMENTO PIEDINI
Arduino Nano I2C LCD SSD1306 Jumper Wire
3.3 +      Rosso
GND      Nero
A4 SDA      Giallo
A5 SCL      Verde

Questo il circuito realizzato con Fritzing

Circuito collegamento display I2C LCD SSD1306 con Arduino Nano

E questo il circuito reale

Utilizzare un display I2C LCD SSD1306 con Arduino Circuito


Come utilizzare un display I2C LCD SSD1306 con Arduino Nano

Installazione e setup librerie

Prima di implementare e testare lo sketch dobbiamo installare le librerie necessarie per poter gestire il display:

  • Adafruit_SSD1306
  • Adafruit_GFX

Possiamo installarle direttamente dall’IDE di Arduino utilizzando il gestore delle librerie cliccando su Sketch -> #include librerie -> Gestione librerie

gestione librerie

Nella barra di ricerca del gestore (1) cerchiamo, e installiamo (2), le librerie necessarie come mostrato nelle immagini:

Adafruit_SSD1306

Installazione libreria Adafruit_SSD1306

Adafruit_GFX

Installazione librerie Adafruit_GFX

Lo Sketch

Dopo aver visto come effettuare i collegamenti e come installare le librerie necessarie, possiamo passare all’implementazione dello sketch.
Creiamo un nuovo file con Arduino IDE e copiamo ed incolliamo lo sketch seguente:

Il codice è abbastanza commentato. La parte più significativa è la dichiarazione e l’inizializzazione della variabile display. Lo sketch può essere utilizzato anche per altri LCD, che utilizzano il chip SSD1306, modificando le dimensioni dei pixel e l’indirizzo I2C.


Come utilizzare un display I2C LCD SSD1306 con Arduino Nano

Configurazione IDE e test dello sketch

Ora non ci resta che caricare il nostro sketch sul Micro-Controllore e vedere se tutto funziona correttamente.
Cominciamo collegando la board Arduino Nano al nostro PC, tramite la porta USB, e configuriamola dal pannello Strumenti dell’IDE in questo modo

  • Scheda -> Arduino Nano
  • Processore -> ATmega328P
  • Porta -> COM3 (N.B. la porta potrebbe essere differente)

Utilizzare un display I2C LCD SSD1306 con Arduino. Configurazione board scheda e porta com

Incolliamo lo sketch, che abbiamo visto poco prima, e carichiamolo sulla board Arduino Nano cliccando sul pulsante Carica (contrassegnato da una freccia rivolta verso destra)

Carica sketch su Arduino nano

Se non vengono visualizzati messaggi di errore e lo sketch viene caricato correttamente vedremo comparire, sull’LCD, le due righe orizzontali e il testo che abbiamo inserito nel codice

Utilizzare un display I2C LCD SSD1306 con Arduino

La libreria Adafruit_SSD1306, oltre a disegnare righe orizzontali e testo, permette anche di visualizzare immagini e grafici. Alcuni sketch di prova sono disponibili tra gli esempi della libreria raggiungibili da Arduino IDE cliccando su File -> Esempi -> Adafruit SSD1306 -> ssd1306_128x64_i2c

A presto 😉

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *