

The TFT LCD Display (Manufacturer: GMT 020-02-8P, Part ID: ST7789) is a high-performance Thin-Film Transistor Liquid Crystal Display designed for vibrant color rendering and high-resolution output. This display leverages thin-film transistor technology to deliver superior image quality, faster response times, and enhanced viewing angles. It is widely used in applications such as smartphones, tablets, handheld devices, and embedded systems.








| Parameter | Value |
|---|---|
| Display Type | TFT LCD |
| Manufacturer | GMT 020-02-8P |
| Controller IC | ST7789 |
| Resolution | 240 x 240 pixels |
| Display Size | 1.3 inches (diagonal) |
| Interface | SPI (Serial Peripheral Interface) |
| Operating Voltage | 3.3V |
| Backlight Voltage | 3.0V to 3.3V |
| Current Consumption | ~20mA (typical) |
| Viewing Angle | 160° |
| Operating Temperature | -20°C to 70°C |
| Storage Temperature | -30°C to 80°C |
The TFT LCD display has an 8-pin interface. Below is the pinout description:
| Pin No. | Pin Name | Description |
|---|---|---|
| 1 | GND | Ground pin for power supply |
| 2 | VCC | Power supply pin (3.3V) |
| 3 | SCL | Serial Clock Line for SPI communication |
| 4 | SDA | Serial Data Line for SPI communication |
| 5 | RES | Reset pin to initialize the display |
| 6 | DC | Data/Command control pin |
| 7 | BLK | Backlight control pin (connect to 3.3V or PWM) |
| 8 | CS | Chip Select pin for SPI communication |
To use the TFT LCD display with an Arduino UNO, follow these steps:
Wiring the Display:
Install Required Libraries:
Adafruit_GFX and Adafruit_ST7789 libraries from the Arduino Library Manager.Example Code: Use the following code to initialize and display basic graphics on the TFT LCD:
// Include necessary libraries
#include <Adafruit_GFX.h> // Graphics library for rendering shapes/text
#include <Adafruit_ST7789.h> // Driver for ST7789 TFT LCD
// Define pin connections
#define TFT_CS 10 // Chip Select pin
#define TFT_RST 8 // Reset pin
#define TFT_DC 9 // Data/Command pin
// Initialize the display object
Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);
void setup() {
// Initialize the display
tft.init(240, 240); // Initialize with 240x240 resolution
tft.setRotation(1); // Set display orientation (0-3)
// Fill the screen with a color
tft.fillScreen(ST77XX_BLACK);
// Draw a rectangle
tft.fillRect(50, 50, 100, 100, ST77XX_RED);
// Display text
tft.setTextColor(ST77XX_WHITE);
tft.setTextSize(2);
tft.setCursor(10, 200);
tft.print("Hello, TFT!");
}
void loop() {
// No actions in the loop
}
Display Not Turning On:
No Output on the Screen:
Adafruit_GFX and Adafruit_ST7789 libraries are installed.Flickering or Unstable Display:
Incorrect Colors or Orientation:
setRotation() function to adjust the display orientation.Q1: Can I use this display with a 5V microcontroller?
A1: Yes, but you must use a level shifter to convert 5V signals to 3.3V to avoid damaging the display.
Q2: How do I control the brightness of the backlight?
A2: Connect the BLK pin to a PWM-capable pin on your microcontroller and use PWM signals to adjust brightness.
Q3: Can I use this display with platforms other than Arduino?
A3: Yes, the display can be used with other platforms like Raspberry Pi or ESP32, provided they support SPI communication.
Q4: What is the maximum SPI clock speed supported?
A4: The ST7789 controller typically supports SPI clock speeds up to 15 MHz, but lower speeds (e.g., 4 MHz) are recommended for stability.
By following this documentation, you can effectively integrate and use the TFT LCD display in your projects.