Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use TFT ST7789V 2.8': Examples, Pinouts, and Specs

Image of TFT ST7789V 2.8'
Cirkit Designer LogoDesign with TFT ST7789V 2.8' in Cirkit Designer

Introduction

The TFT ST7789V 2.8' is a 2.8-inch thin-film transistor (TFT) display module that incorporates the ST7789V driver. This display is renowned for its high resolution, vibrant color depth, and compact size, making it ideal for a wide range of embedded applications. It is commonly used in projects requiring graphical interfaces, such as IoT devices, handheld instruments, and consumer electronics.

Explore Projects Built with TFT ST7789V 2.8'

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
ESP32-Powered 1.3 inch TFT Display Module for Visual Data Output
Image of ESP32+ST7789: A project utilizing TFT ST7789V 2.8' in a practical application
This circuit connects an ESP32 microcontroller to a 1.3 inch TFT display module (ST7789). The ESP32 provides power and control signals to the display, enabling it to show graphical data.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-C6 and ST7735S Display: Wi-Fi Controlled TFT Display Module
Image of ESP32-C6sm-ST7735: A project utilizing TFT ST7789V 2.8' in a practical application
This circuit features an ESP32-C6 microcontroller interfaced with a China ST7735S 160x128 TFT display. The ESP32-C6 controls the display via SPI communication, providing power, ground, and control signals to render graphics and text on the screen.
Cirkit Designer LogoOpen Project in Cirkit Designer
STM32F103C8T6-Based Spectral Sensor with ST7735S Display and Pushbutton Control
Image of ColorSensor: A project utilizing TFT ST7789V 2.8' in a practical application
This circuit features an STM32F103C8T6 microcontroller interfaced with a China ST7735S 160x128 display and two spectral sensors (Adafruit AS7262 and AS7261). It also includes two pushbuttons for user input, with the microcontroller managing the display and sensor data processing.
Cirkit Designer LogoOpen Project in Cirkit Designer
RTL8720DN-Based Interactive Button-Controlled TFT Display
Image of coba-coba: A project utilizing TFT ST7789V 2.8' in a practical application
This circuit features an RTL8720DN microcontroller interfaced with a China ST7735S 160x128 TFT LCD display and four pushbuttons. The microcontroller reads the states of the pushbuttons and displays their statuses on the TFT LCD, providing a visual feedback system for button presses.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with TFT ST7789V 2.8'

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of ESP32+ST7789: A project utilizing TFT ST7789V 2.8' in a practical application
ESP32-Powered 1.3 inch TFT Display Module for Visual Data Output
This circuit connects an ESP32 microcontroller to a 1.3 inch TFT display module (ST7789). The ESP32 provides power and control signals to the display, enabling it to show graphical data.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of ESP32-C6sm-ST7735: A project utilizing TFT ST7789V 2.8' in a practical application
ESP32-C6 and ST7735S Display: Wi-Fi Controlled TFT Display Module
This circuit features an ESP32-C6 microcontroller interfaced with a China ST7735S 160x128 TFT display. The ESP32-C6 controls the display via SPI communication, providing power, ground, and control signals to render graphics and text on the screen.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of ColorSensor: A project utilizing TFT ST7789V 2.8' in a practical application
STM32F103C8T6-Based Spectral Sensor with ST7735S Display and Pushbutton Control
This circuit features an STM32F103C8T6 microcontroller interfaced with a China ST7735S 160x128 display and two spectral sensors (Adafruit AS7262 and AS7261). It also includes two pushbuttons for user input, with the microcontroller managing the display and sensor data processing.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of coba-coba: A project utilizing TFT ST7789V 2.8' in a practical application
RTL8720DN-Based Interactive Button-Controlled TFT Display
This circuit features an RTL8720DN microcontroller interfaced with a China ST7735S 160x128 TFT LCD display and four pushbuttons. The microcontroller reads the states of the pushbuttons and displays their statuses on the TFT LCD, providing a visual feedback system for button presses.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Graphical user interfaces for embedded systems
  • Portable devices and handheld instruments
  • IoT dashboards and smart home displays
  • Wearable devices
  • Prototyping and educational projects

Technical Specifications

Key Technical Details

Parameter Specification
Display Type TFT (Thin-Film Transistor)
Driver IC ST7789V
Screen Size 2.8 inches
Resolution 240 x 320 pixels
Color Depth 262K (18-bit) colors
Interface SPI (Serial Peripheral Interface)
Operating Voltage 3.3V
Backlight Voltage 3.0V to 3.6V
Backlight Current ~20mA
Viewing Angle 160°
Operating Temperature -20°C to 70°C
Dimensions 50mm x 69mm x 2.8mm

Pin Configuration and Descriptions

Pin No. Pin Name Description
1 GND Ground pin for power and signal reference.
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 (High for data, Low for command).
7 CS Chip Select pin (Active Low).
8 BLK Backlight control pin (PWM or ON/OFF).

Usage Instructions

How to Use the Component in a Circuit

  1. Power Supply: Connect the VCC pin to a 3.3V power source and the GND pin to ground.
  2. SPI Communication: Connect the SCL (clock) and SDA (data) pins to the corresponding SPI pins on your microcontroller.
  3. Control Pins:
    • Use the RES pin to reset the display during initialization.
    • The DC pin determines whether the data being sent is a command or display data.
    • The CS pin should be pulled low to enable communication with the display.
  4. Backlight: Connect the BLK pin to a PWM-capable pin on your microcontroller for brightness control or directly to 3.3V for constant backlight.

Important Considerations and Best Practices

  • Voltage Levels: Ensure all signal lines operate at 3.3V logic levels. Use level shifters if your microcontroller operates at 5V.
  • Initialization Sequence: Follow the ST7789V initialization sequence as specified in the datasheet to properly configure the display.
  • SPI Speed: Use an appropriate SPI clock speed (typically up to 15 MHz) to ensure reliable communication.
  • Backlight Control: Use PWM to adjust the brightness of the backlight for power efficiency and user comfort.
  • Mounting: Handle the display carefully to avoid damaging the glass or flex cable.

Example Code for Arduino UNO

Below is an example of how to interface the TFT ST7789V 2.8' with an Arduino UNO using the Adafruit ST7789 library.

#include <Adafruit_GFX.h>    // Core graphics library
#include <Adafruit_ST7789.h> // ST7789 driver library
#include <SPI.h>             // SPI library

// Define pins for the display
#define TFT_CS    10  // Chip Select pin
#define TFT_RST   9   // Reset pin
#define TFT_DC    8   // Data/Command pin

// Initialize the display object
Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);

void setup() {
  // Initialize serial communication for debugging
  Serial.begin(9600);
  Serial.println("TFT ST7789V Test");

  // Initialize the display
  tft.init(240, 320); // Initialize with 240x320 resolution
  tft.setRotation(1); // Set display orientation (1 = landscape)

  // Fill the screen with a color
  tft.fillScreen(ST77XX_BLACK);
  tft.setTextColor(ST77XX_WHITE);
  tft.setTextSize(2);

  // Display a message
  tft.setCursor(10, 10);
  tft.println("Hello, TFT!");
}

void loop() {
  // Add your code here for dynamic updates
}

Notes:

  • Install the Adafruit GFX and Adafruit ST7789 libraries via the Arduino Library Manager before running the code.
  • Ensure the TFT_CS, TFT_RST, and TFT_DC pins are correctly connected to the Arduino.

Troubleshooting and FAQs

Common Issues and Solutions

  1. Display Not Turning On:

    • Verify the power connections (VCC and GND).
    • Check the backlight pin (BLK) to ensure it is powered or controlled via PWM.
  2. No Display Output:

    • Ensure the SPI connections (SCL and SDA) are correctly wired.
    • Confirm the CS, DC, and RES pins are properly connected and configured in the code.
  3. Flickering or Artifacts:

    • Reduce the SPI clock speed to improve signal integrity.
    • Check for loose or poor-quality connections.
  4. Incorrect Colors or Orientation:

    • Verify the initialization sequence in the code.
    • Use the setRotation() function to adjust the display orientation.

FAQs

Q: Can I use this display with a 5V microcontroller?
A: Yes, but you must use level shifters to convert the 5V logic signals to 3.3V to avoid damaging the display.

Q: What is the maximum SPI clock speed supported?
A: The ST7789V typically supports SPI clock speeds up to 15 MHz, but this may vary depending on your setup.

Q: How do I control the backlight brightness?
A: Connect the BLK pin to a PWM-capable pin on your microcontroller and use analogWrite() to adjust brightness.

Q: Can I use this display in outdoor environments?
A: The display is not sunlight-readable and is best suited for indoor or shaded environments.