#define TFT_RST 8 // define reset pin, or set to -1 and connect to Arduino RESET pin #define TFT_DC 9 // define data/command pin #define TFT_CS 10 // define chip select pin #include // Hardware-specific library for ST7789 MIT license, all text above must be included in any redistribution Written by Limor Fried/Ladyada for Adafruit Industries. Please support Adafruit and open-source hardware by purchasing These displays use SPI to communicate, 4 or 5 pins are required toĪdafruit invests time and resources providing this open source code, Works with the Adafruit 1.8" TFT Breakout w/SD cardĬheck out the links above for our tutorials and wiring diagrams. This is a library for several Adafruit displays based on ST77* drivers. * This is a free software with NO WARRANTY. * Interfacing Arduino with ST7789 TFT display (240x240 pixel). The same thing for the other library file. The second library is Adafruit graphics library which can be installed also from Arduino IDE library manager.īoth libraries can be installed manually, first download them from the following 2 links:Īdafruit ST7789 TFT library -> direct linkĪdafruit graphics library -> direct linkĪfter the download, go to Arduino IDE -> Sketch -> Include Library -> Add. The first library is a driver for the ST7789 TFT display which can be installed from Arduino IDE library manager (Sketch -> Include Library -> Manage Libraries …, in the search box write “st7789” and install the one from Adafruit). The following Arduino code requires two libraries from Adafruit Industries: Interfacing Arduino UNO with ST7789 TFT code: SCL pin is connected to Arduino digital pin 13.īL (LED) pin is connected to Arduino 3V3 pin (optional). SDA pin is connected to Arduino digital pin 11, RST pin is connected to Arduino digital pin 8,ĭC pin is connected to Arduino digital pin 9, So, the ST7789 TFT display is connected to the Arduino board as follows (each one through voltage divider): If the display module has a CS pin (Chip Select) then it should be connected to Arduino digital pin 10 through another voltage divider. Each voltage divider consists of 2.2k and 3.3k resistors, this drops the 5V into 3V which is sufficient. To connect the Arduino to the display module, I used voltage divider for each line which means there are 4 voltage dividers. The display module is supplied with 3.3V (between VCC and GND) which comes from the Arduino board.Īll Arduino UNO board output pins are 5V, connecting a 5V pin to the ST7789 TFT display may damage its controller. Arduino ST7789 TFT display circuitĪs mentioned above, the ST7789 TFT display controller works with 3.3V only (power supply and control lines). The back light turns off when the BLK pin connected to the ground (GND). The ST7789 display module shown in project circuit diagram has 7 pins: (from right to left): GND (ground), VCC, SCL (serial clock), SDA (serial data), RES (reset), DC (or D/C: data/command) and BLK (back light).Ĭonnecting the BLK pin is optional. Project circuit schematic diagram is shown below. Interfacing Arduino UNO with ST7789 TFT circuit: 4 x 2.2k ohm resistor (+1 if the display module has CS pin).4 x 3.3k ohm resistor (+1 if the display module has CS pin).This one has no CS (chip select) pin, its internally attached to GND: ST7789 TFT display without CS pin The following image shows a ST7789 display module provided by Adafruit Industries: Adafruit ST7789 TFT display moduleĪnother version of the ST7789 display module is shown below. This module works with 3.3V only and it doesn’t support 5V (not 5V tolerant). This display is an IPS display, it comes in different sizes (1.3″, 1.54″ …) but all of them should have the same resolution of 240×240 pixel, this means it has 57600 pixels. It’s a color display that uses SPI interface protocol and requires 3, 4 or 5 control pins, it’s low cost and easy to use. The ST7789 TFT module contains a display controller with the same name: ST7789. This Arduino tutorial shows how to interface the UNO board with ST7789 TFT display.
0 Comments
Leave a Reply. |