Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

How to Use 0.96" IPS LCD Display Module (160x80): Examples, Pinouts, and Specs

Image of 0.96" IPS LCD Display Module (160x80)Design with 0.96" IPS LCD Display Module (160x80) in Cirkit Designer

Introduction

The 0.96" IPS LCD Display Module (160x80), manufactured by Waveshare (Part ID: WAV-15868), is a compact and versatile display designed for embedded systems. With its 0.96-inch diagonal screen, 160x80 pixel resolution, and IPS technology, this module delivers vibrant colors, wide viewing angles, and excellent clarity. It is ideal for applications requiring a small yet high-quality display, such as IoT devices, handheld instruments, and wearable electronics.

Explore Projects Built with 0.96" IPS LCD Display Module (160x80)

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 ESP8266-Based Environmental Monitoring System with Air Quality and Dust Sensors: A project utilizing 0.96" IPS LCD Display Module (160x80) in a practical application
ESP8266-Based Environmental Monitoring System with Air Quality and Dust Sensors

This circuit features an ESP8266 microcontroller as the central processing unit, interfacing with various sensors and an LCD display for data output. The sensors include an MQ-135 air quality sensor, a DHT11 temperature and humidity sensor, and a GP2Y1010AU0F dust sensor, whose signals are managed by a 16-channel analog multiplexer before being read by the ESP8266. The LCM1602 IIC module is used to facilitate communication between the ESP8266 and the LCD display, allowing sensor data to be presented to the user.

Open Project in Cirkit Designer
Image of Arduino Leonardo Controlled LCD Display with I2C Interface: A project utilizing 0.96" IPS LCD Display Module (160x80) in a practical application
Arduino Leonardo Controlled LCD Display with I2C Interface

This circuit connects an Arduino Leonardo microcontroller to a 16x2 LCD display via an LCM1602 IIC interface module, enabling the display of text on the LCD. The Arduino is programmed to display the messages 'TEST LCD i2C' and 'KelasRobot.com' on the LCD. The IIC module facilitates communication between the Arduino and the LCD using the I2C protocol, simplifying the wiring and pin usage.

Open Project in Cirkit Designer

Common Applications

Technical Specifications

Below are the key technical details of the 0.96" IPS LCD Display Module:

Parameter Specification
Manufacturer Waveshare
Part ID WAV-15868
Display Type IPS LCD
Screen Size 0.96 inches
Resolution 160x80 pixels
Interface SPI
Operating Voltage 3.3V / 5V
Operating Current ~20mA (typical)
Viewing Angle 160° (horizontal and vertical)
Backlight LED
Dimensions 27.5mm x 14.5mm x 2.4mm
Operating Temperature -20°C to 70°C

Pin Configuration

The module features a 7-pin interface for SPI communication. Below is the pinout description:

Pin Name Description
1 GND Ground connection
2 VCC Power supply (3.3V or 5V)
3 SCL Serial Clock Line (SPI clock input)
4 SDA Serial Data Line (SPI data input)
5 RES Reset pin (active low)
6 DC Data/Command control pin
7 CS Chip Select (active low)

Usage Instructions

Connecting the Display to a Circuit

To use the 0.96" IPS LCD Display Module, connect it to a microcontroller (e.g., Arduino UNO) via the SPI interface. Below is a typical wiring guide for an Arduino UNO:

Display Pin Arduino Pin
GND GND
VCC 5V
SCL D13 (SCK)
SDA D11 (MOSI)
RES D8
DC D9
CS D10

Important Considerations

  1. Voltage Compatibility: The module supports both 3.3V and 5V logic levels, making it compatible with most microcontrollers.
  2. SPI Speed: Ensure the SPI clock speed does not exceed the module's maximum supported frequency (typically 10 MHz).
  3. Reset Pin: Always initialize the display by toggling the RES pin during startup.
  4. Library Support: Use a compatible library (e.g., Adafruit GFX and ST7735 libraries) for easier integration.

Example Code for Arduino UNO

Below is an example Arduino sketch to initialize and display text on the module using the Adafruit GFX and ST7735 libraries:

#include <Adafruit_GFX.h>      // Core graphics library
#include <Adafruit_ST7735.h>   // Library for ST7735-based displays
#include <SPI.h>               // SPI library

// 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_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);

void setup() {
  // Initialize serial communication for debugging
  Serial.begin(9600);
  Serial.println("Initializing display...");

  // Initialize the display
  tft.initR(INITR_MINI160x80);  // Use the correct initialization for 160x80
  tft.setRotation(1);          // Set display orientation (1 = landscape)

  // Clear the screen and set text properties
  tft.fillScreen(ST77XX_BLACK);  // Clear screen with black color
  tft.setTextColor(ST77XX_WHITE); // Set text color to white
  tft.setTextSize(1);            // Set text size (1 = smallest)

  // Display a message
  tft.setCursor(0, 0);           // Set cursor to top-left corner
  tft.println("Hello, World!");  // Print text to the display
}

void loop() {
  // Nothing to do here
}

Best Practices

Troubleshooting and FAQs

Common Issues and Solutions

  1. Display Not Turning On

    • Cause: Incorrect wiring or insufficient power supply.
    • Solution: Double-check all connections and ensure the power supply provides adequate voltage and current.
  2. No Output on the Screen

    • Cause: Incorrect initialization or SPI communication failure.
    • Solution: Verify the SPI connections and ensure the correct library and initialization code are used.
  3. Flickering or Distorted Display

    • Cause: Excessive SPI clock speed or noisy connections.
    • Solution: Reduce the SPI clock speed and use shorter, shielded wires.
  4. Partial or Incorrect Display

    • Cause: Incorrect orientation or resolution settings.
    • Solution: Ensure the correct initialization parameters (e.g., INITR_MINI160x80) are used.

FAQs

Q: Can this display be used with 3.3V microcontrollers like ESP32?
A: Yes, the module supports both 3.3V and 5V logic levels, making it compatible with 3.3V microcontrollers.

Q: Is the backlight brightness adjustable?
A: The backlight is not directly adjustable, but you can control its brightness by adding a PWM circuit to the VCC line.

Q: What is the maximum SPI clock speed supported?
A: The module typically supports SPI clock speeds up to 10 MHz. Check the datasheet for exact details.

Q: Can I display images on this module?
A: Yes, you can display images by converting them to a compatible format (e.g., BMP) and using the appropriate library functions.

Q: Does the module come with a protective screen cover?
A: Some versions may include a protective film. Check with the supplier for details.