Colleghiamo un display OLED ad ESPertino

Con i consigli forniti in questo articolo impareremo a dotare ESPertino di una importante unità di visualizzazione attiva e a colori, grazie al collegamento con un display a matrice attiva OLED. Grazie ad esso, il nostro sistema di sviluppo potrà interagire con il mondo esterno con maggiore efficacia e flessibilità, attraverso disegni, messaggi ed immagini. Il cablaggio elettronico risulta estremamente semplice, un po' meno la gestione della comunicazione software.

Introduzione

Con un collegamento di un display grafico ad ESPertino, i sistemi creati con esso diventano, in un colpo solo, perfetti. La possibilità di visualizzare le informazioni ed le immagini a colori, infatti, aumenta di tanto la duttilità dei progetti realizzati con il nostro sistema di sviluppo. La sua indipendenza da qualsiasi altro sistema di visualizzazione (vedi il monitor seriale dell'IDE di Arduino) diventa pressoché totale. E questa esigenza si fa sempre più sentire, man mano che le applicazioni si fanno più importanti e professionali.

Il modulo OLED

Per le nostre prove e per i vari esperimenti abbiamo utilizzato il famoso modulo uOLED-32028-P1, prodotto dalla 4D Systems, azienda leader nella ricerca e nella produzione di soluzioni grafiche intelligenti. Tale modulo è visibile in figura 1. Esso è caratterizzato da una risoluzione di 240 x 320 pixel. In realtà, qualsiasi altro modulo può essere utilizzato utilmente, a patto di apportare alcune modifiche al listato sorgente e, soprattutto, alla modalità di invio dei codici di comando e di controllo, verso il display.

Figura 1: il display uOLED-32028-P1 della 4D Systems

Figura 1: il display uOLED-32028-P1 della 4D Systems

Schema elettrico

Il semplice schema elettrico è rappresentato in figura 2. Per il suo funzionamento di base e minimale occorrono semplicemente tre collegamenti, in quanto si implementa una comunicazione seriale tra le due unità, disattivando le altre caratteristiche "intelligenti" del display e "trasferendole" al nostro ESPertino. Il modulo OLED, infatti, fungerà da semplice slave ed è configurato in modalità SPE, come vedremo tra poco. I soli tre canali elettrici sul display utilizzati sono i seguenti:

  • Vin, ossia il collegamento dell'alimentazione, pari a 5V. Essa è prelevata dallo stesso ESPertino;
  • Gnd, ossia la massa comune del sistema;
  • Rx, ossia la linea seriale di ricezione dei dati. Si consiglia di effettuare tale collegamento interponendo una resistenza di circa 1000 ohm tra le due unità.

Opzionalmente si potrebbe utilizzare anche il pin di reset, per il quale è sufficiente prevedere l'invio di un breve impulso a livello logico basso, dalla durata di almeno 20ms, al fine di resettare, appunto, il modulo di visualizzazione. Tale collegamento si può effettuare ad una qualsiasi porta di output dell'ESP32. Se, inoltre, si vogliono far transitare dei dati dal display ad ESPertino, si può utilizzare anche la linea Tx.

Figura 2: lo schema elettrico del collegamento tra ESPertino e il display OLED

Figura 2: lo schema elettrico del collegamento tra ESPertino e il display OLED

Il cablaggio

Seguendo lo schema di cui sopra è possibile ricavarne il relativo semplice cablaggio. La linea seriale può essere realizzata mediante un diretto e semplice filo elettrico ma è preferibile, come detto prima, interporre un resistore di circa 1000 ohm. La figura 3 mostra i tre collegamenti da realizzare tra le due unità.

Figura 3: il cablaggio minimale tra le due unità

Figura 3: il cablaggio minimale tra le due unità

Come inviare un comando al display

Il modulo in questione ha la possibilità di lavorare in modalità "programmazione seriale" attraverso il supporto SPE (Serial Programming Environment). Esso consente di utilizzare il display come semplice terminale non intelligente. L'invio di particolari sequenze di bytes abilita l'esecuzione di comandi di visualizzazione e di impostazione grafica. Il supporto SPE deve essere attivato utilizzando il Workshop4 IDE e caricando il relativo modulo accedendo al menù "Tools". Alcuni display di più recente concezione dispongono di un ponticello sullo stesso circuito, per effettuare tale abilitazione. Dopo questa operazione il display non dispone più di vita propria e attende la ricezione dei comandi, via comunicazione seriale, per poter effettuare le varie visualizzazioni grafiche sul proprio schermo.

Specifiche dei comandi seriali

Abbandoniamo adesso la parte hardware del sistema e passiamo a descrivere la modalità con cui si creano e si implementano i comandi grafici da inviare al modulo. Ogni comando, in realtà, è una sequenza di caratteri, o bytes, che devono essere inviati da ESPertino, via linea seriale. Un esempio chiarirà subito l'idea di tale filosofia, mostrando la modalità del disegno di un cerchio sullo schermo del display. La sequenza di bytes da inviare è la seguente:

FFC3 0078 00A0 0014 07E0
[...]

ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 2515 parole ed è riservato agli abbonati PREMIUM. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici PREMIUM e potrai fare il download (PDF) dell'EOS-Book e Firmware del mese. ABBONATI ORA con PAYPAL è semplice e sicuro.

Abbonati alle riviste di elettronica

2 Commenti

  1. Giovanni Di Maria Giovanni Di Maria 4 luglio 2017
  2. Maurizio Di Paolo Emilio Maurizio Di Paolo Emilio 4 luglio 2017

Scrivi un commento

ESPertino è la nuova scheda per IoT compatibile ARDUINO.
Scopri come averla GRATIS!