Display IPS 1.3″ 240×240/ST7789 – Arduino

Questo display da 1,3″ 240×240 tipo ST7789  gestito tramite la scheda Arduino è a colori e presenta un’alta risoluzione, 260 ppi (Pixel Per Inch). Il display è del tipo In-Plane Switching o IPS e pilotabile tramite Interfaccia SPI.

display 240x240 ST7789 Arduino

Caratteristiche principali del display

  • LCD IPS da 1,3″ con ampio angolo di visione di ±80°
  • Display RGB a colori
  • Display 240 x 240 ad alta risoluzione – 260 PPI
  • Area: 23.4×23.4mm
  • Dimensioni modulo: 28x39x12 m
  • Interfaccia SPI senza pin CS
  • Controller display: ST7789
  • Tensione di alimentazione : 3,3 V

display LCD 240x240 ST7789

Interfaccia SPI

Questo display incorpora un interfaccia SPI che fornisce aggiornamenti rapidi del display.
Poiché è un dispositivo di sola scrittura, non è necessario che la SPI MISO sia collegata.
L’interfaccia non è  dotata del pin CS  (Chip Select ) il che riduce il numero di pin, ma non permette di avere altri  dispositivi SPI sullo stesso bus contemporaneamente.

Connettore del modulo

La connessione al display avviene tramite un header a 7 pin.

PINDescrizione
GNDPin GND in comune con l'MCU.
VCCPin alimentazione 3,3 V. Da MCU o da fonte esterna
SCLConnettere a SPI SCL (Clock)
SDAConnettere a SPI MOSI (Dati)
RESReset per il controller LCD ST7789. Normalmente HIGH, Portare LOW per ripristinare
DCDati/Comando. Determina il tipo di dati da inviare al display. HIGH= Comando, LOW = Dati
BLK Controllo retroilluminazione. Se scollegato è sempre attiva
Ourpcb

Materiale utilizzato per il test

Sotto sono riportati i componenti minimi per il test del display 240×240 ST7789 tramite la scheda Arduino.

Arduino UNO o suo clone

Display IPS 240×240

Breadboard

Cavi di collegamento

NOTA: in questo caso si è utilizzata una scheda Keyestudio PLUS. Completamente compatibile con l’ambiente di sviluppo Arduino IDE. Contiene tutte le funzioni della scheda Arduino UNO R3. Inoltre, alcuni miglioramenti che ne rafforzano notevolmente la funzione.

Collegamento del display

Il modulo display LCD da 1,3″ 240×240 tipo ST7789 funziona a 3,3 V. Il modulo non è dotato di un proprio regolatore da 3,3 V e quindi deve essere alimentato direttamente con 3,3 V.
Sul retro del modulo si trovano: un transistor con la sigla J3Y (S8050 – datasheet), alcuni resistori, e un condensatore che forniscono il controllo della retroilluminazione.
Il pin BLK può essere lasciato scollegato, in questo caso si lascerà sempre accesa la retroilluminazione.

display LCD 240x240 ST7789

NOTA: In rete viene a volte indicato che se si utilizza con un MCU da 5 V, occorre assicurarsi di includere dei traslatori di livello logico sulle linee dati per evitare possibili danni. Altre volte sono presenti delle resistenze o dei partitori. Dai test effettuati però si è rilevato che anche collegando direttamente le linee con vi sono problemi.

Sotto è riportato lo schema dei collegamenti con la scheda Arduino.

display 240x240 ST7789 Arduino

display 240x240 ST7789 Arduino

display 240x240 ST7789 Arduino

display 240x240 ST7789 Arduino

Libreria per driver ST7789

Per gestire il display si dovranno utilizzare due librerie.

  • Adafruit ST7789 TFT library
  • Adafruit GFX Library

La prima libreria Adafruit-ST7789 potrà essere installata tramite il gestore della libreria Arduino IDE ricercando “Adafruit-ST7789”.  La libreria è compatibile anche con display che utilizzano driver ST7735.  Al momento dell’installazione vi sarà chiesto di installare anche la libreria Adafruit seesaw, cliccare su Install all.

A fine installazione vi sarà data conferma

La seconda libreria è quella grafica Adafruit che può essere installata tramite il gestore della libreria Arduino IDE ricercando “gfx“.

display LCD 240x240 ST7789

Per informazioni su come fare, vedere l’articolo Arduino – Tutorial, come installare una libreria

Gestione del display

Nei demo della libreria ci sono vari esempi che contengono le istruzioni per i due tipi di driver e per il collegamento a varie schede di controllo. Per il collegamento con Arduino sono sufficienti le seguente impostazioni.

I 2 file di libreria sono inclusi nel codice principale come mostrato di seguito, l’inclusione della libreria Arduino SPI è facoltativa!

Le connessioni dei pin del modulo TFT ST7789 (CS, RST e DC) sono definite come mostrato di seguito. Gli altri pin del display (SDA e SCL) sono collegati ai pin SPI hardware di Arduino (pin digitale 11 e pin digitale 13).

La libreria Adafruit ST7789 viene inizializzata con questa riga:

Infine, il display TFT viene inizializzato utilizzando il seguente comando:

Sketch utilizzato

Sotto è riportato lo sketch utilizzato per i test, in questo caso delle sole funzioni di testo.

display 240x240 ST7789 Arduino

Altri esempi di collegamento del display

Collegamento del display con una scheda ESP32

Collegamento del display con una scheda Wemos D1 Mini

Altri moduli display

Panoramica di altre tipologie di display utilizzati nei vari progetti presenti sul sito. Dai più semplici LCD 16×2, passando per i TFT con  touch screen e quelli tipo OLED.

Display_LCD_OLED_TFT