Display TFT
Risoluzione 176x220 2" Interfaccia SPI

ultimo aggiornamento 11 agosto 2018


JLCPCB - 2$ per prototipi di PCB, di qualsiasi colore. Produzione in 24 ore!
L'Azienda di prototipi PCB più popolare, con oltre 700.000 clienti in tutto il mondo!
Sorridi a tutto il mondo qualunque cosa accada!

 

Indice

Descrizione

Il display qui illustrato è del tipo TFT (Thin Film Transistor), in italiano transistor a pellicola sottile: è una tecnologia applicata ai display piatti a cristalli liquidi (LCD) o OLED (Organic Light Emitting Diode ovvero diodo organico ad emissione di luce) che vengono in questo modo, identificati come display a matrice attiva.
Il modulo illustrato può essere trovato sul sito ICStation (Codice Id 11099) ad un costo di circa 7 € comprese le spese di spedizione.

 

homotix

 

Il display TFT utilizzato è di tipo retroilluminato e misura 2" di diagonale, con risoluzione di 176 x 220 pixel, basato sul chip ILI9225 (vedere datasheet)che è un controller / driver a chip singolo per 262.144 colori. Questo chip, è in grado di collegarsi direttamente a un microprocessore esterno tramite un’interfaccia SPI. I dati possono essere memorizzati all’interno della memoria RAM on-chip da 87120 byte.
Lo schema di alimentazione del modulo, è molto semplice: l’alimentazione a +5V è ridotta al valore di 3,3V con un integrato regolatore LM6206-3.3 N3 (Integrato U1) del tipo a basso rumore e basso valore di dropout che eroga sino a 250 mA.
Un ponticello J1 permette di alimentare il modulo direttamente con la tensione di 3,3V, per fare questo occorre depositare una goccia di stagno per effettuare il ponticello

LM6206N3 Low Dropout CMOS Voltage Regulators

Piedinatura Datasheet Foto dell'integrato

Per interfacciamento esterno è presente l'integrato U2 tipo 74HC245; questi è un ricetrasmettitore a 8 bit con uscite a 3 stati.
La retroilluminazione del display è alimentata a 3,3V  tramite la resistenza R1 da 5,6 ohm.
Il modulo misura 62x38mm circa, nella parte posteriore è presente uno slot per schede micro-SD, che tra le altre cose, permette di memorizzare le immagini bitmap da visualizzare sullo schermo

74HC245 Octal bus transceiver; 3-state

Piedinatura Datasheet Foto dell'integrato

P1 - Pin interfaccia

NO

Pin

Label Decription

1

VCC

Power Input(3.3V/5V)

2

GND

Ground

3

GND

Ground

4

NC

No Connect

5

NC

No Connect

6

NC

No Connect

7

CLK

Serial Clock input

8

SDA

Serial Data input

9

RS

Command/Data Selection(0:cammand;1:Data)

10

RST

LCD Reset(Low level Enable)

11

CS

ChipEnable(Low level Active)

P2 - Pin SD Card

NO

Pin

Alternate Names

Label Decription

1

SD_CS

 

SD Card Chip Select

2

SD_MOSI

SDO, DI

SPI Bus Data-input

3

SD_CLK

 

SPI Bus Clock

4

SD_MISO

SDI, DO

SPI Bus Data-Output

Caratteristiche

 

General Information of the module

Diagonale del monitor : 2 "
Numero di pixel : 176 x 220
Profondità colore : 262.144 colori
Modulo Dimensioni ( mm ) : 62 x 38
Interfaccia: SPI

 

General Information of display

1

 Display Type: 2.0 " TFT

2

 Display mode: Transmissive

3

 Resolution:  176*(RGB)*220

4

 Driver IC: ILI9225G

5

 Outline Dimensions: 37.68*51.3*2.3 mm

6

 Interface Type: CPU_8Bit

7

 Backlight: White LED

8

 Operating voltage: +2.6V~3.2V

9

 Viewing Angle: 12 O'clock

10

 Operating Temp: -20°C~+70°C

11

 Storage Temp: -30°C~+80°C

Esempi di collegamento del display ad Arduino UNO

Per la gestione del display sono utilizzate varie librerie, nei singoli esempi è indicato il modello e dove reperirla, è possibile comunque scaricare il seguente file che le contiene tutte.

Collegamento con collegamento SPI lento

Il programma uilizzato utilizza la libreria TFT_22_ILI9225, e mostra il caricamento di un logo, alla conclusione viene mostrato il tempo in millisecondi utilizzati per la conclusione del programma.
La libreria utilizzata è quella scritta da Johan Cronje e che può essere scaricata da questo link, per installare la libreria:

Guardate l'esempio di esempio "Basic_Demo" per il codice di esempio e il Wiki per la documentazione.

In questo caso viene utilizzata una modalità che permette di montare il display direttamente sul connettore di Arduino, ma i tempi di esecuzione sono lenti.

#include "SPI.h"
#include "TFT_22_ILI9225.h"

#define TFT_RST A4
#define TFT_RS A3
#define TFT_CS A5 // SS
#define TFT_SDI A2 // MOSI
#define TFT_CLK A1 // SCK
#define TFT_LED 0 // 0 if wired to +5V directly

// Use software SPI (slower)
TFT_22_ILI9225 tft = TFT_22_ILI9225(TFT_RST, TFT_RS, TFT_CS, TFT_SDI, TFT_CLK, TFT_LED);

 


schema

codice

NO

Pin

Label Decription

Pin Arduino

1

VCC

Power Input(3.3V/5V)

+5V

2

GND

Ground

GND

3

GND

Ground

GND

4

NC

No Connect

 

5

NC

No Connect

 

6

NC

No Connect

 

7

CLK

Serial Clock input

A1

8

SDA

Serial Data input

A2

9

RS

Command/Data Selection(0:cammand;1:Data)

A3

10

RST

LCD Reset(Low level Enable)

A4

11

CS

ChipEnable(Low level Active)

A5

Collegamento con collegamento SPI veloce

Anche in questo caso viene utilizzata la libreria TFT_22_ILI9225, ma il diverso collegamento dei pin di collegamento permette tempi di esecuzione più veloci.

#include "SPI.h"
#include "TFT_22_ILI9225.h"

#define TFT_CLK 13 // SCK
#define TFT_SDI 11 // SDA
#define TFT_RS 9 // RS
#define TFT_RST 8 // RST
#define TFT_CS 10 // CS
#define TFT_LED 0 // Già collegato a +5V/+3.3V

// Use hardware SPI (faster)
TFT_22_ILI9225 tft = TFT_22_ILI9225(TFT_RST, TFT_RS, TFT_CS, TFT_LED);


schema

codice

Utilizzo del display come cornice digitale

Il programma presentato permette di utilizzare il display come una cornice digitale. per la gestione del modulo sono utilizzate tre diverse librerie:
La principale è basata sulla libreria UTFT scritta da Henning Karlsen (vedere link) e modificata da Doncho Gunchev per supportare il display basato sul ILI9225, in questo caso occorre indicare come modello il QD220A. La libreria modificata può essere trovata a questo link.
Per gestire anche anche il lettore di scheda mini SD e le immagini che su di essa possono essere salvate sono necessarie altre due librerie, anche queste scritte da Henning Karlsen:


schema

codice

 

Per collegare il modulo display ad Arduino ed utilizzare anche il lettore mini SD occorrerà saldare un connettore maschio 4x1 sul connettore P2, per come è  impostato il connettore P1, il collegamento con Arduino è molto semplice, vedere l'immagine sotto riportata.
Per il collegamento tra Arduino e il connettore P2 occorre realizzare un apposito caco oppure utilizzare cavi singoli del tipo DuPont Maschi Femmina.

NO

Pin

Label Decription

Pin Arduino

1

VCC

Power Input(3.3V/5V)

+5V

2

GND

Ground

GND

3

GND

Ground

GND

4

NC

No Connect

 

5

NC

No Connect

 

6

NC

No Connect

 

7

CLK

Serial Clock input

A1

8

SDA

Serial Data input

A2

9

RS

Command/Data Selection(0:cammand;1:Data)

A3

10

RST

LCD Reset(Low level Enable)

A4

11

CS

ChipEnable(Low level Active)

A5

     

 

1

SD_CS

SDCard Chip Sellect

D10

2

SD_MOSI

SPI Bus Data-input MOSI

D11

3

SD_SCK

SPI Bus Clock

D13

4

SD_MISO

SPI Bus Data-Output MISO

D12

Realizzazione di un orologio digitale

Un altro esempio di utilizzo del display TFT ILI9225 è quello di realizzare un orologio digitale, per fare questo utilizzeremo un modulo MH-Real-Time Clock Module - 2 che si basa sull' integrato DS1302 al cui interno è presente un orologio in tempo reale / calendario e 31 byte di RAM statica (per le caratteristiche e libreria di gestione vedere la relativa pagina).
Per il collegamento del modulo Real-Time, vista la configurazione dei pin è possibile inserire il modulo direttamente nel connettore di Arduino utilizzando i pin D2 e D3 opportunamente configurati per alimentare il modulo.
Per quanto riguarda il modulo display, per la sue gestione, viene utilizzata la libreria UTFT.
Per il resto il programma utilizza le seguenti librerie: <DS1302.h>, <Wire.h> e <UTFT.h>


schema

codice

NO

Pin

Label Decription

Pin Arduino

1

VCC

Power Input(3.3V/5V)

+5V

2

GND

Ground

GND

3

GND

Ground

GND

4

NC

No Connect

 

5

NC

No Connect

 

6

NC

No Connect

 

7

CLK

Serial Clock input

A1

8

SDA

Serial Data input

A2

9

RS

Command/Data Selection(0:cammand;1:Data)

A3

10

RST

LCD Reset(Low level Enable)

A4

11

CS

ChipEnable(Low level Active)

A5

       

1

VCC

Alimentazione modulo RTC +5V

D2

2

GND

GND modulo modulo display e RTC

D3

3

CLK

Pin CLCK - CLK modulo RTC

D4

4

DAT

Pin I/O - DAT modulo RTC

D5

5

RST

Pin CE - RST modulo RTC

D6

 

Elenco revisioni:

11/08/2018

Aggiornato link

28/10/2017

Emissione preliminare