• Banner

IPS LCD 1.3″ 240×240 RGB Display ST7789 Robotics Bangladesh
  • IPS LCD 1.3″ 240×240 RGB Display ST7789 Robotics Bangladesh
  • IPS LCD 1.3″ 240×240 RGB Display ST7789 Robotics Bangladesh

IPS LCD 1.3″ 240×240 RGB Display ST7789

RBD-2468

Full color display with wide viewing angle.  This is version without CS pin.

BDT 490.00
BDT 490.00 BDT 490.00 BDT 490.00 BDT 490.00
Tax included Tax excluded Tax included Tax excluded
BDT 490.00 Tax excluded
BDT 490.00 Tax included
BDT 0.00 Tax
BDT 490.00 Tax excluded
BDT 0.00 Tax
BDT 490.00 Tax included
Quantity
23 Items

  Security policy

(edit with the Customer Reassurance module)

  Delivery policy

(edit with the Customer Reassurance module)

  Return policy

(edit with the Customer Reassurance module)

Description

DESCRIPTION

This 1.3″ IPS LCD is a full color display with a high resolution of 240 x 240 pixels and a wide viewing angle.

PACKAGE INCLUDES:

  • IPS LCD 1.3″ 240×240 RGB Display with ST7789 driver

KEY FEATURES OF IPS LCD 1.3″ 240×240 DISPLAY WITH ST7789 DRIVER:

  • 1.3″ IPS LCD with wide ±80° viewing angle
  • RGB Full color display
  • 240 x 240 high resolution 260PPI display
  • SPI interface w/out CS pin
  • ST7789 LCD display controller
  • 3.3V operation

These full color displays can pack a lot of information into a small 1.3″ form factor with 260PPI (Pixels Per Inch).

When you find these modules for sale, they are often mistakenly identified as an OLED display but they are in fact IPS LCD which has a similar wide viewing angle to OLED.

The module operates at 3.3V, so if using with a 5V MCU, be sure to include logic level shifters on the data lines to prevent possible damage.  The circuitry on the back of the module is just a transistor and a few resistors and capacitor to provide backlight control.  The module does not have a 3.3V regulator on it and so must be powered from 3.3V.

The video below shows two of these displays being used for the Adafruit Uncanny Eyes application being run from a Teensy 4.1 microcontroller.   This application comes with the Teensyduino software.  It cannot be run on a regular AVR Arduino as the processing requirements are too great.

Video Player
00:00
00:10

SPI Interface

This display incorporates the SPI interface which provides for fast display updates.

Since it is a write only device, it does not need the SPI MISO line hooked up.  The  module also does not bring the CS pin out to the interface which helps to lower the pin count.  The downside is that it cannot be used with other SPI devices on the same bus at the same time.

Module Connections

Connection to the display is via a 7-pin header.

1 x 7 Header

  • GND – Connect to system ground.  This ground needs to be in common with the MCU.
  • VCC –  Connect to 3.3V.  This can come from the MCU or  separate power supply.
  • SCL –  Connects to SPI SCL (Clock)
  • SDA – Connect to SPI MOSI (Data)
  • RES – Reset for the ST7789 LCD controller.  Normally HIGH, pull LOW to reset
  • DC –   Data / Command.  Determines type type of data being sent to the display.  LOW = Command, HIGH = Data
  • BLK – Backlight Control.  If left unconnected, the backlight is always on.  Pull LOW to turn off

OUR EVALUATION RESULTS:

These are interesting modules to work with since they have full color and graphical capability with good library support.

These modules are breadboard friendly with a 7-pin header on the back that can be inserted into a solderless breadboard or a 7-pin female connector can be used to connect to it if the display is to be mounted.  The display is mounted on a PCB which helps provide support, but be sure to press on the header pins when applying pressure to insert them into a breadboard and not press on the glass to avoid possible damage.

Though these displays can seem to be a bit intimidating to use at first, especially with a lack of a CS pin, just follow these steps to get up and running very easily.

Connecting the Display

IPS LCD 1.3 240x240 RGB Display ST7789 - In TestConnect VCC to  3.3V and GND to ground on the MCU.

Connect the SPI lines.  In our example we are using hardware SPI as it gives the best performance.  Module SCL pin goes to the SPI SCK line on the MCU and module SDA goes to the SPI MOSI line on the MCU.  These pins will be different depending on which MCU your are using.  The SPI SCK is pin 13 on Uno and pin 52 on Mega 2560.  MOSI is pin 11 on Uno and pin 51 on Mega 2560.

Connect DC to pin 8 and RST to pin 9.  The BLK pin can be left unconnected which will leave the backlight on all the time.

If you are using a 3.3V MCU, these lines can be connected directly.  If you are using a 5V MCU, then be sure to use a logic level converter like shown at the bottom of the page.

Install Arduino ST7789 Library

Install the Arduino-ST7789-Library.  You will need to manually download it from the GitHub site as it is not available via the Arduino IDE library manager.  This library is a modified version of the original Adafruit library which makes it easy to use with the displays that do not have a CS pin as well as those that do.  https://github.com/ananevilya/Arduino-ST7789-Library

Download and Run Program

The program below is a modified version of the example program that gets installed with the library.  Mainly it was pruned down in size and the changes below already incorporated.

If you instead want to use the example program, make the following changes.

Uncomment this line:  //Arduino_ST7789 tft = Arduino_ST7789(TFT_DC, TFT_RST); //for display without CS pin

Comment out this line:  Arduino_ST7789 tft = Arduino_ST7789(-1, TFT_RST, TFT_MOSI, TFT_SCLK, TFT_CS); //for display with CS pin and DC via 9bit SPI

This change uses the hardware SPI lines on the MCU for fastest operation.  You can also use Software SPI by uncommenting this line instead:  //Arduino_ST7789 tft = Arduino_ST7789(TFT_DC, TFT_RST, TFT_MOSI, TFT_SCLK); //for display without CS pin which is slower, but allows you to use any pins you want for the SPI interface.

ST7789 LCD Test Program

/***************************************************
  This is a library for the ST7789 IPS SPI display.

  Originally written by Limor Fried/Ladyada for Adafruit Industries.
  Modified by Ananev Ilia
  Further modified by Ken Hahn - ProtoSupplies.com
 ****************************************************/

#include <Adafruit_GFX.h>   // Core graphics library by Adafruit
#include <Arduino_ST7789.h> // Library for ST7789 (with or without CS pin)
#include <SPI.h>

#define TFT_DC    8     // Data/Command
#define TFT_RST   9     // ST7789 Reset
#define TFT_MOSI  11    // SPI data pin
#define TFT_SCLK  13    // SPI sclk pin

// For Hardware SPI
// Using hardware SPI pins (11, 13 on UNO; 51, 52 on MEGA; ICSP-4, ICSP-3 on DUE and etc)
Arduino_ST7789 tft = Arduino_ST7789(TFT_DC, TFT_RST); //for display without CS pin

// Using software SPI on any available pins.  Define above if changes are needed (slower)
//Arduino_ST7789 tft = Arduino_ST7789(TFT_DC, TFT_RST, TFT_MOSI, TFT_SCLK); //for display without CS pin

float p = 3.1415926;
//===============================================================================
//  Initialization
//===============================================================================
void setup() {

  tft.init(240, 240);   // initialize ST7789 chip at 240x240 pixels

  // Paint red/green/blue rectangles
  tft.fillRect(0, 0 , 240, 80, RED);
  tft.fillRect(0, 80 , 240, 160, GREEN);
  tft.fillRect(0, 160 , 240, 240, BLUE);
  delay (1000);

   // large block of text
  tft.fillScreen(BLACK);
  testdrawtext("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur adipiscing ante sed nibh tincidunt feugiat. Maecenas enim massa, fringilla sed malesuada et, malesuada sit amet turpis. Sed porttitor neque ut ante pretium vitae malesuada nunc bibendum. Nullam aliquet ultrices massa eu hendrerit. Ut sed nisi lorem. In vestibulum purus a tortor imperdiet posuere. ", WHITE);
  delay(1000);

  // a single pixel
  tft.drawPixel(tft.width()/2, tft.height()/2, GREEN);
  delay(1000);

  // line draw test
  testlines(YELLOW);
  delay(1000);

  // optimized lines
  testfastlines(RED, BLUE);
  delay(1000);

  testdrawrects(GREEN);
  delay(1000);

  testfillrects(YELLOW, MAGENTA);
  delay(1000);

  tft.fillScreen(BLACK);
  testfillcircles(10, BLUE);
  testdrawcircles(10, WHITE);
  delay(1000);

  testroundrects();
  delay(1000);

  testtriangles();
  delay(1000);

  mediabuttons();
  delay(1000);
}
//===============================================================================
//  Main
//===============================================================================
void loop() {
 
  tft.invertDisplay(true);
  delay(500);
  tft.invertDisplay(false);
  delay(500);
}
//===============================================================================
//  Subroutines
//===============================================================================
void testlines(uint16_t color) {
  tft.fillScreen(BLACK);
  for (int16_t x=0; x < tft.width(); x+=6) {
    tft.drawLine(0, 0, x, tft.height()-1, color);
  }
  for (int16_t y=0; y < tft.height(); y+=6) {
    tft.drawLine(0, 0, tft.width()-1, y, color);
  }
}

void testdrawtext(char *text, uint16_t color) {
  tft.setCursor(0, 0);
  tft.setTextColor(color);
  tft.setTextWrap(true);
  tft.print(text);
}

void testfastlines(uint16_t color1, uint16_t color2) {
  tft.fillScreen(BLACK);
  for (int16_t y=0; y < tft.height(); y+=5) {
    tft.drawFastHLine(0, y, tft.width(), color1);
  }
  for (int16_t x=0; x < tft.width(); x+=5) {
    tft.drawFastVLine(x, 0, tft.height(), color2);
  }
}

void testdrawrects(uint16_t color) {
  tft.fillScreen(BLACK);
  for (int16_t x=0; x < tft.width(); x+=6) {
    tft.drawRect(tft.width()/2 -x/2, tft.height()/2 -x/2 , x, x, color);
  }
}

void testfillrects(uint16_t color1, uint16_t color2) {
  tft.fillScreen(BLACK);
  for (int16_t x=tft.width()-1; x > 6; x-=6) {
    tft.fillRect(tft.width()/2 -x/2, tft.height()/2 -x/2 , x, x, color1);
    tft.drawRect(tft.width()/2 -x/2, tft.height()/2 -x/2 , x, x, color2);
  }
}

void testfillcircles(uint8_t radius, uint16_t color) {
  for (int16_t x=radius; x < tft.width(); x+=radius*2) {
    for (int16_t y=radius; y < tft.height(); y+=radius*2) {
      tft.fillCircle(x, y, radius, color);
    }
  }
}

void testdrawcircles(uint8_t radius, uint16_t color) {
  for (int16_t x=0; x < tft.width()+radius; x+=radius*2) {
    for (int16_t y=0; y < tft.height()+radius; y+=radius*2) {
      tft.drawCircle(x, y, radius, color);
    }
  }
}

void testtriangles() {
  tft.fillScreen(BLACK);
  int color = 0xF800;
  int t;
  int w = tft.width()/2;
  int x = tft.height()-1;
  int y = 0;
  int z = tft.width();
  for(t = 0 ; t <= 15; t++) {
    tft.drawTriangle(w, y, y, x, z, x, color);
    x-=4;
    y+=4;
    z-=4;
    color+=100;
  }
}

void testroundrects() {
  tft.fillScreen(BLACK);
  int color = 100;
  int i;
  int t;
  for(t = 0 ; t <= 4; t+=1) {
    int x = 0;
    int y = 0;
    int w = tft.width()-2;
    int h = tft.height()-2;
    for(i = 0 ; i <= 16; i+=1) {
      tft.drawRoundRect(x, y, w, h, 5, color);
      x+=2;
      y+=3;
      w-=4;
      h-=6;
      color+=1100;
    }
    color+=100;
  }
}

void mediabuttons() {
  // play
  tft.fillScreen(BLACK);
  tft.fillRoundRect(25, 10, 78, 60, 8, WHITE);
  tft.fillTriangle(42, 20, 42, 60, 90, 40, RED);
  delay(500);
  // pause
  tft.fillRoundRect(25, 90, 78, 60, 8, WHITE);
  tft.fillRoundRect(39, 98, 20, 45, 5, GREEN);
  tft.fillRoundRect(69, 98, 20, 45, 5<span style="color:#4
Product Details
RBD-2468
23 Items

Specific References

EAN13
2468
Comments (0)
Grade
No customer reviews for the moment.
16 other products in the same category:

Reference: RBD-0159

LCD Keypad Shield for Arduino

(0)
Provides a user-friendly interface that allows users to go through the menu, make selections etc. It consists of a 1602 white character blue backlight LCD. The keypad consists of 6 keys select, up, right, down, left and reset. To save the digital IO pins, the keypad interface only uses one ADC channel. The key value is read out through a 5 stage voltage...
BDT 550.00
BDT 550.00 tax incl.
BDT 550.00 tax excl.
BDT 550.00 tax excl.
BDT 550.00 tax incl.
BDT 550.00 tax incl.
BDT 0.00 Tax
BDT 550.00 tax excl.
BDT 550.00 tax excl.
BDT 0.00 Tax
BDT 550.00 tax incl.
More
In-Stock
In stock: 33

Reference: RBD-2454

MAX7219 8 Digit Led Tube Display Control Module

(0)
Power: 5V This module is compatible with 5V and 3.3V microcontrollers. Material: PCB + Electronic Components
BDT 220.00
BDT 220.00 tax incl.
BDT 220.00 tax excl.
BDT 220.00 tax excl.
BDT 220.00 tax incl.
BDT 220.00 tax incl.
BDT 0.00 Tax
BDT 220.00 tax excl.
BDT 220.00 tax excl.
BDT 0.00 Tax
BDT 220.00 tax incl.
More
In stock
In stock: 21

Reference: RBD-0384

MAX7219 Red Dot Matrix Module MCU Control Display Module DIY Kit For Arduino

(0)
Driver Chip: MAX7219 Input Voltage: 3.7 to 5.3 V Input Current: 320 mA Display Dimensions: 32x32x6 (LxWxH) mm PCD Dimensions: 50×32 (LxW) mm Soldering is required
BDT 250.00
BDT 250.00 tax incl.
BDT 250.00 tax excl.
BDT 250.00 tax excl.
BDT 250.00 tax incl.
BDT 250.00 tax incl.
BDT 0.00 Tax
BDT 250.00 tax excl.
BDT 250.00 tax excl.
BDT 0.00 Tax
BDT 250.00 tax incl.
More
In-Stock
In stock: 10

Reference: RBD-2579

0.56 Inch 2 Digit 7 Segment Red Common Anode Display

(0)
Displays two digits using bright red LEDs Common anode configuration for simplified wiring 10 pins for easy connection Clear visibility and compact size Versatile for various electronic projects
BDT 50.00
BDT 50.00 tax incl.
BDT 50.00 tax excl.
BDT 50.00 tax excl.
BDT 50.00 tax incl.
BDT 50.00 tax incl.
BDT 0.00 Tax
BDT 50.00 tax excl.
BDT 50.00 tax excl.
BDT 0.00 Tax
BDT 50.00 tax incl.
More
In-Stock
In stock: 25

Reference: RBD-2118

27 inch 10 Touch Points IR Touch Screen/IR Touch Panel, IR Touch Frame, IR Touch Overlay Kit

(0)
Interface Type: USB Glass: With Glass Response Time: less than 15ms Size: 27 inch, 10 Touch Point **The product is only available for in-store pickup, we do not ship this product as it is a fragile item. **Product Images are shown for illustrative purposes only and may differ from the actual product.
BDT 14,520.00
BDT 14,520.00 tax incl.
BDT 14,520.00 tax excl.
BDT 14,520.00 tax excl.
BDT 14,520.00 tax incl.
BDT 14,520.00 tax incl.
BDT 0.00 Tax
BDT 14,520.00 tax excl.
BDT 14,520.00 tax excl.
BDT 0.00 Tax
BDT 14,520.00 tax incl.
More
Last items in stock
In stock: 1

Reference: RBD-1332

I2C Graphic 128x64 LCD Adapter

(0)
Adapter: Graphic 128x64 Communication: i2c 
BDT 499.00
BDT 499.00 tax incl.
BDT 499.00 tax excl.
BDT 499.00 tax excl.
BDT 499.00 tax incl.
BDT 499.00 tax incl.
BDT 0.00 Tax
BDT 499.00 tax excl.
BDT 499.00 tax excl.
BDT 0.00 Tax
BDT 499.00 tax incl.
More
In-Stock
In stock: 8

Reference: RBD-0433

I2C LCD Adapter Module

(0)
5V power supply. Serial I2C control of LCD display using PCF8574. RoboticsBD Backlight can be enabled or disabled via a jumper on the board. Contrast control via a potentiometer. Can have 8 modules on a single I2C bus (change address via solder jumpers)address, allowing.
BDT 90.00
BDT 90.00 tax incl.
BDT 90.00 tax excl.
BDT 90.00 tax excl.
BDT 90.00 tax incl.
BDT 90.00 tax incl.
BDT 0.00 Tax
BDT 90.00 tax excl.
BDT 90.00 tax excl.
BDT 0.00 Tax
BDT 90.00 tax incl.
More
In Stock
In stock: 649

Reference: RBD-0339

Brand: Waveshare

3.5inch Resistive Touch Display (B) for Raspberry Pi

(0)
3.5inch Resistive Touch Display (B) For Raspberry Pi 480×320 IPS Screen SPI Check out New Product 3.5inch HDMI Display-B
BDT 3,900.00
BDT 3,900.00 tax incl.
BDT 3,900.00 tax excl.
BDT 3,900.00 tax excl.
BDT 3,900.00 tax incl.
BDT 3,900.00 tax incl.
BDT 0.00 Tax
BDT 3,900.00 tax excl.
BDT 3,900.00 tax excl.
BDT 0.00 Tax
BDT 3,900.00 tax incl.
More
Out-of-Stock
In stock: 0

Reference: RBD-0274

Brand: Waveshare

Raspberry Pi 5inch Resistive Touch HDMI LCD

(0)
5 inch Resistive Touch Screen LCD, HDMI interface, Designed for Raspberry Pi Installation Instruction: http://www.waveshare.com/wiki/5inch_HDMI_LCD Raspbian Image for 5 inch HDMI Diplay with Touch :  Raspbian 5 inch HDMI with Touch Download Link    
BDT 4,850.00
BDT 4,850.00 tax incl.
BDT 4,850.00 tax excl.
BDT 4,850.00 tax excl.
BDT 4,850.00 tax incl.
BDT 4,850.00 tax incl.
BDT 0.00 Tax
BDT 4,850.00 tax excl.
BDT 4,850.00 tax excl.
BDT 0.00 Tax
BDT 4,850.00 tax incl.
More
Out-of-Stock
In stock: 0

Reference: RBD-2455

2.42" Inch OLED Display SSD1309 12864 SPI Serial Port For Arduino C51 White

(0)
2.42" Inch OLED Display SSD1309 12864 SPI Serial Port For Arduino C51 WhiteBrand: No BrandMetal Bracket to protect Display
BDT 1,650.00
BDT 1,650.00 tax incl.
BDT 1,650.00 tax excl.
BDT 1,650.00 tax excl.
BDT 1,650.00 tax incl.
BDT 1,650.00 tax incl.
BDT 0.00 Tax
BDT 1,650.00 tax excl.
BDT 1,650.00 tax excl.
BDT 0.00 Tax
BDT 1,650.00 tax incl.
More
In stock
In stock: 11

Reference: RBD-1642

LCD 16x2 Blue Backlight

(0)
For Standard LCD 16x2 with Male Header. Press here For Standard LCD 16x2 with Female Header. Press here For Standard LCD 16x2 with I2C adapter board soldered. Press here. For Standard LCD 16x2 with White Background. Press here. For Standard LCD 16x2 with Blue Background. Press here.
BDT 220.00
BDT 220.00 tax incl.
BDT 220.00 tax excl.
BDT 220.00 tax excl.
BDT 220.00 tax incl.
BDT 220.00 tax incl.
BDT 0.00 Tax
BDT 220.00 tax excl.
BDT 220.00 tax excl.
BDT 0.00 Tax
BDT 220.00 tax incl.
More
In-Stock
In stock: 753

Reference: RBD-0699

1.8" inch TFT LCD Display module ST7735S 128x160

(0)
Display Size: 1.8″ Driver IC: ST7735 Input Voltage (V): 3.3 to 5 Pixel Resolution: 128 x 160 Interface Type: SPI
BDT 590.00
BDT 590.00 tax incl.
BDT 590.00 tax excl.
BDT 590.00 tax excl.
BDT 590.00 tax incl.
BDT 590.00 tax incl.
BDT 0.00 Tax
BDT 590.00 tax excl.
BDT 590.00 tax excl.
BDT 0.00 Tax
BDT 590.00 tax incl.
More
In-Stock
In stock: 15

Reference: RBD-2583

0.56 Inch 3 Digit 7 Segment Green Common Cathode Display

(0)
Displays three digits using bright green LEDs Common cathode configuration for simplified wiring 10 pins for easy connection Clear visibility and compact size Versatile for various electronic projects
BDT 50.00
BDT 50.00 tax incl.
BDT 50.00 tax excl.
BDT 50.00 tax excl.
BDT 50.00 tax incl.
BDT 50.00 tax incl.
BDT 0.00 Tax
BDT 50.00 tax excl.
BDT 50.00 tax excl.
BDT 0.00 Tax
BDT 50.00 tax incl.
More
In-Stock
In stock: 20

Reference: RBD-1759

Brand: Waveshare

E-Ink Electronic E-paper Display Screen Module 200x200, 1.54inch

(0)
Display Resolution: 200 x 200 Display Screen Color: Black and White No backlight so keeps displaying last content for a long time even when the power is down Ultra low power consumption, basically power is only required for refreshing SPI interface, for connecting with controller boards like Raspberry Pi/Arduino/Nucleo, etc.
BDT 1,439.00
BDT 1,439.00 tax incl.
BDT 1,439.00 tax excl.
BDT 1,439.00 tax excl.
BDT 1,439.00 tax incl.
BDT 1,439.00 tax incl.
BDT 0.00 Tax
BDT 1,439.00 tax excl.
BDT 1,439.00 tax excl.
BDT 0.00 Tax
BDT 1,439.00 tax incl.
More
In-Stock
In stock: 10

Reference: RBD-0258

Brand: SparkFun Electronics

SparkFun Micro OLED Breakout

(0)
SparkFun Micro OLED Breakout
BDT 1,800.00
BDT 1,800.00 tax incl.
BDT 1,800.00 tax excl.
BDT 1,800.00 tax excl.
BDT 1,800.00 tax incl.
BDT 1,800.00 tax incl.
BDT 0.00 Tax
BDT 1,800.00 tax excl.
BDT 1,800.00 tax excl.
BDT 0.00 Tax
BDT 1,800.00 tax incl.
More
Out-of-Stock
In stock: 0

Follow us on Facebook