AED 56.00
Description
The 1.8-inch SPI TFT LCD Display Module ST7735 is a compact and versatile color display designed for easy integration into various microcontroller projects. With its small form factor and SPI interface, it is suitable for use with a wide range of microcontrollers like 51/AVR/STM32/ARM and supports both 8-bit and 16-bit communication modes.
Features:
- Compact Size: The module features a 1.8-inch screen, making it ideal for space-constrained applications where a small display is required.
- High Resolution: The display boasts a resolution of 128x160 pixels, providing crisp and detailed images and graphics.
- ST7735 Driver IC: The display is driven by the ST7735 controller, which is a popular choice for small TFT displays. This controller offers fast and efficient data transfer, enabling smooth and responsive visuals.
- Serial Peripheral Interface (SPI): The module utilizes a 4-wire SPI interface for communication with the microcontroller. SPI is a widely used communication protocol, and its simple implementation makes it easy to connect the display to various microcontrollers.
- SD Card Socket: The module is equipped with a socket for a micro SD card. This allows you to easily store and retrieve data from the SD card, making it suitable for applications that require data logging or image storage.
- PCB Adapter: The module comes with a PCB adapter for the LCD, simplifying the integration process and making it easier to mount the display onto your project's circuit board.
- Color Display: The TFT LCD panel can display vibrant and rich colors, making it suitable for applications where color is essential, such as graphical user interfaces (GUIs) and multimedia projects.
- Wide Compatibility: The display module is designed to work with various microcontroller platforms, including 51 series, AVR, STM32, and ARM-based controllers. This wide compatibility makes it accessible to a broad range of developers and hobbyists.
Module Specifications:
- Display Size: 1.8 inches
- Resolution: 128x160 pixels
- Color Depth: 18-bit (262,144 colors)
- Interface: 4-wire Serial Peripheral Interface (SPI)
- Backlight: LED backlight for enhanced visibility in various lighting conditions
Driver IC - ST7735 Specifications:
- Display Driver: ST7735
- Display Controller: Sitronix ST7735S
- Communication Interface: SPI (Serial Peripheral Interface)
- Maximum Clock Speed: The SPI interface supports clock speeds up to a certain frequency (e.g., 10 MHz), depending on the capabilities of the connected microcontroller.
- Display Capabilities: The ST7735 driver IC allows for smooth rendering of images, text, and graphics on the 1.8-inch TFT LCD panel. It supports basic operations such as pixel setting, drawing lines, displaying text, and more.
- Color Rendering: The driver IC provides support for 18-bit color depth, which enables the display to render a wide range of colors with varying shades and hues.
- Built-in RAM Buffer: The driver IC typically includes an internal RAM buffer that stores the image data before it is sent to the display. This buffer helps in reducing communication overhead and improving display performance.
- Low Power Consumption: The ST7735 driver IC is designed to be power-efficient, making it suitable for battery-operated devices and other power-constrained applications.
- Gamma Correction: The driver IC may offer gamma correction to optimize color rendering and improve the display's overall visual quality.
Package Includes:
1 x Display Module
Pin wiring
The table below shows the 1.8 TFT wiring to Arduino UNO.
1.8 TFT Display | Wiring to Arduino Uno |
LED | 3.3 V |
SCK | 13 |
SDA | 11 |
A0 or DC | 8 |
RESET | 7 |
CS | 9 |
GND | GND |
VCC | 5 V |
How to program the LCD TFT 1.8 Inch 128×160 SPI Module with Arduino:
a Library is needed to program and draw shapes in this TFT module Proportional fonts are included in the library, and different sizes can be enabled/disabled at compile time to optimize FLASH memory usage. The library has been thoroughly tested on the Arduino UNO, Mega (ATmega328 or ATmega2560 CPU), and Leonardo-compatible boards (ATmega32u4 processor).
The library is intended to be compact and quick. A clean screen for a 160 x 128 TFT will typically take only 85 milliseconds to finish. Images can be read from an SD card and drawn in 200 milliseconds, which is impressive for a low-cost UNO!
The library is built on the Adafruit GFX library, with compatibility in mind. The library has been significantly enhanced to increase the performance for AVR processors (usually 3 to 10 times quicker) and to include new functionality. Different size proportional fonts and formatting features are among the new graphical functionalities. A large number of sample drawings are provided to show the various functionalities.
First you need to Download the TFT Library from HERE
then you can Upload the following code to test your TFT Screen
/* Test the tft.print() viz embedded tft.write() function This sketch used font 2, 4, 7 Make sure all the required fonts are loaded by editting the User_Setup.h file in the TFT_ST7735 library folder. The library uses the hardware SPI pins only: For UNO, Nano, Micro Pro ATmega328 based processors MOSI = pin 11, SCK = pin 13 For Mega: MOSI = pin 51, SCK = pin 52 The pins used for the TFT chip select (CS) and Data/command (DC) and Reset (RST) signal lines to the TFT must also be defined in the library User_Setup.h file. Sugested TFT connections for UNO and Atmega328 based boards sclk 13 // Don't change, this is the hardware SPI SCLK line mosi 11 // Don't change, this is the hardware SPI MOSI line cs 10 // Chip select for TFT display dc 9 // Data/command line rst 7 // Reset, you could connect this to the Arduino reset pin Suggested TFT connections for the MEGA and ATmega2560 based boards sclk 52 // Don't change, this is the hardware SPI SCLK line mosi 51 // Don't change, this is the hardware SPI MOSI line cs 47 // TFT chip select line dc 48 // TFT data/command line rst 44 // you could alternatively connect this to the Arduino reset ######################################################################### ###### DON'T FORGET TO UPDATE THE User_Setup.h FILE IN THE LIBRARY ###### ###### TO SELECT THE FONTS AND PINS YOU USE, SEE ABOVE ###### ######################################################################### */ #include "TFT_ST7735.h"// Graphics and font library for ST7735 driver chip TFT_ST7735 tft = TFT_ST7735(); // Invoke library, pins defined in User_Setup.h #define TFT_GREY 0x5AEB // New colour void setup(void) { tft.init(); tft.setRotation(1); } void loop() { // Fill screen with grey so we can see the effect of printing with and without // a background colour defined tft.fillScreen(TFT_GREY); // Set "cursor" at top left corner of display (0,0) and select font 2 // (cursor will move to next line automatically during printing with 'tft.println' // or stay on the line is there is room for the text with tft.print) tft.setCursor(0, 0, 2); // Set the font colour to be white with a black background, set text size multiplier to 1 tft.setTextColor(TFT_WHITE,TFT_BLACK); tft.setTextSize(1); // We can now plot text on screen using the "print" class tft.println("Hello World!"); // Set the font colour to be yellow with no background, set to font 7 tft.setTextColor(TFT_YELLOW); tft.setTextFont(2); tft.println(1234.56); // Set the font colour to be red with black background, set to font 4 tft.setTextColor(TFT_RED,TFT_BLACK); tft.setTextFont(4); tft.println((long)3735928559, HEX); // Should print DEADBEEF // Set the font colour to be green with black background, set to font 2 tft.setTextColor(TFT_GREEN,TFT_BLACK); tft.setTextFont(2); tft.println("Groop"); // Test some print formatting functions float fnumber = 123.45; // Set the font colour to be blue with no background, set to font 2 tft.setTextColor(TFT_BLUE); tft.setTextFont(2); tft.print("Float = "); tft.println(fnumber); // Print floating point number tft.print("Binary = "); tft.println((int)fnumber, BIN); // Print as integer value in binary tft.print("Hexadecimal = "); tft.println((int)fnumber, HEX); // Print as integer number in Hexadecimal while(1); }