IOT

List of Arduino Compatible Display Devices

This post will show you a variety of Display Devices that work with the Arduino platform. These can be as basic as a single line of text or as complex as a large touchscreen display. This guide will help you select the best display device for your Arduino-based maker project by providing a side-by-side comparison of popular options.

how-to-connect-google-home-to-tv-without-chromecast

The majority of these display devices can also be used in various do-it-yourself setups, such the Raspberry Pi, ESP8266, ESP32, etc.

Introduction

A display is an information output device that shows data graphically. Having a display device in your Arduino or another do-it-yourself project might be helpful since you can see the data and information on the display instead of the serial monitor.

how-to-connect-google-home-to-tv-without-chromecast

Several different kinds of Display Devices can be used with Arduino thanks to the availability of helpful libraries for this platform. However, picking the ideal screen for the job is no small work, since there are many factors to think about (such as cost, size, resolution, usability, library availability, etc.).

In this article, I will introduce you to a selection of the most popular types of Display Devices that are compatible with the Arduino. I have included resources for learning how to use Arduino to create that kind of display. Check out the options, and I wish you luck in deciding on the best screen for your next Arduino project.

16×2 Character LCD

The 16×2 LCD is probably the most widely used Arduino Display Device. LCD that can simply show numbers and letters is called an alphanumeric character display (and very few custom characters).

LCD Module

16×2 LCD Display

The values 16*2 denote the total number of rows and the number of characters per row, respectively. The 20*4 LCD is an even larger variant of this screen. There are 4 rows, and each row may hold 20 characters.

20x4-LCD-Display

20×4 LCD Display

Both the 16×2 Character LCD and its larger sibling, the 20×4 LCD, are typically available with backlighting. The most typical colours of the backlight are blue and green. There are 16 pins on both the 16*2 and 20*4 LCDs. The pins of a 16*2 LCD are listed below.

Pin Number Pin Name Description
1 GND Ground
2 VCC Supply
3 VO Contrast Adjust
4 RS Register Select
5 RW Read / Write
6 E Enable
7 – 14 D0 – D7 Data
15 A Backlight LED Anode
16 K Backlight LED Cathode

The only way for an Arduino to talk to a 16*2 LCD is via 8-bit or 4-bit Parallel Communication. PCF8574 based I2C add-on boards are built for 16×2 LCD because this interface uses a lot of Arduino’s pins.

If you use an I2C-based LCD, you’ll just need two pins (SCL an SDA of I2C). Both “How to Connect I2C LCD with Arduino” and “Interfacing 16×2 LCD with Arduino” are separate tutorials that I’ve written.

OLED Display

The monochromatic OLED Display is the next step up in usefulness for Arduino displays. OLED Displays contain self-illuminating pixels i.e., each pixel is capable of emitting its own light. Therefore, a backlight is superfluous.

When it comes to Arduino OLED Displays, the most popular option is the 128×64 pixel OLED Display, which has a diagonal measurement of about 0.96 inches.

Interfacing 128x64 OLED Graphic Display with Arduino 0.96 OLED Display

A 0.96″ OLED Display

When it comes to connecting to the outside world, OLED Displays can utilise either the Serial Peripheral Interface (SPI) or the Inter-Integrated Circuit (I2C) bus. These two devices seem nearly identical, with the exception of the pins.

Since OLED is a Graphical Display, it is more simpler to display bitmap images and characters with multiple fonts than it is on typical Character LCDs.

Check out “Interfacing 128×64 OLED Graphic Display with Arduino” if you’re interested in learning more about OLED Display.

Nokia 5110 LCD

The Nokia 5110 LCD is quickly becoming a popular option for Arduino Projects, despite having been designed for usage in Nokia Mobile Phones. It is a Graphical LCD with a resolution of 84 by 48 pixels.

Interfacing-Nokia-5110-LCD-with-Arduino-2

Nokia 5110 LCD with Pinout

The PCD8544 LCD controller serves as the central nervous system, and a serial communication interface similar to SPI is used to convey data. Below is a table containing the pinout for the Nokia 5110 LCD.

Pin Number Pin Name Pin Description
1 RST External Reset Input
2 CE Chip Enable
3 DC Data / Command
4 DIN Serial Data Input
5 CLK Serial Clock Input
6 VCC Supply Voltage
7 BL Backlight Supply
8 GND Ground

Many colours are available for the backlight, including red, blue, green, and white. An entire guide titled “Interfacing Nokia 5110 LCD with Arduino” was written by me. If you’re curious, have a look.

The Nokia 5110’s graphical LCD makes it simple to craft a customised Graphical User Interface (GUI) for your software, such as a Menu System. If you’re interested in designing a menu system for the Nokia 5110 LCD using Arduino, I recommend checking out the aforementioned tutorial.

128×64 Graphical LCD

The 128×64 Graphical LCD is the next handy display gadget. The 128 by 64-pixel resolution beats that of the Nokia 5110 LCD, as the name says. The LCD is also quite big, providing a substantial amount of display area.

Interfacing-128x64-Graphical-LCD-Arduino-Image2

A 128×64 Graphical LCD

The pinout of a standard 128×64 LCD displays striking similarities to that of a 16×2 display (but with couple of extra pins). You can utilise either a 4-bit or 8-bit parallel connection, and the interface is fundamentally comparable to that of a 16×2 LCD.

However, the unique feature is that it can be set up to function using an SPI-like Serial Interface, which drastically reduces the number of Microcontroller pins needed for operation.

Take a look at the pins in the following table.

Pin Number Pin Name Pin Number
1 GND Ground
2 VCC Supply Voltage
3 VO Contrast Adjust
4 RS Register Select (CS in Serial)
5 RW Read / Write Control (Serial Data In)
6 E Enable (Serial CLK)
7 – 14 D0 – D7 Data
15 PSB Interface Selection (0: Serial, 1: 8-bit/4-bit Parallel)
16 NC Not Connected
17 RST Reset
18 VOUT LCD Voltage Doubler Output
19 BLA Backlight LED Anode
20 BLK Backlight LED Cathode

Since there are numerous possible LCD Controllers, knowing which one is utilised in the LCD Device is crucial before selecting it in the code. The following are examples of frequently used controllers:

  • KS0108
  • SSD1306
  • ST7920
  • SH1106
  • SSD1322

8×8 LED Matrix

It typically comes in a single-color LED matrix, but dual-color and RGB LED matrices are also conceivable. Given their 2D Matrix arrangement, the 64 LEDs (88) require a total of 16 pins for driving. This setup is not helpful in any way.

8x8-LED-Matrix

8×8 LED Matrix

In order for Arduino (or other Microcontrollers) to connect with MAX7219, modules centred around an 8×8 LED Matrix must be built using a specific Display Driver IC such as MAX7219.

8x8-LED-Matrix-MAX7219

8×8 LED Matrix with MAX7219

Multiple modules can be cascaded easily to get the desired pixel density. To study up on 88 LED Matrix, go to the “Arduino 88 LED Matrix” guide.

8x8-LED-Matrix-Cascade

Cascaded 8×8 LED Matrix

7-Segment Display

A Seven Segment Display, also called a 7 Segment Display, is another easy-to-use display device compatible with Arduino. A 7 Segment Display is the most cost-effective and hassle-free choice if your programme has to show simply numeric values, such as time or quantity.

7-Segment-Display

7 Segment Display

A 7-Segment Display is simply 7 individual LEDs arranged in the shape of the number 8 (thus the name). Putting up the digits 0-9 is a breeze. A 7-Segment Display can be a Common Cathode Device or a Common Anode Device, depending on the orientation of the LEDs on the inside.

The 7 Segment Display is often found in 4 – Digit Module form. The decimal point is also an element of individual Seven Segment Displays.

7-Segment-Display-4-Digit

4-Digit 7-Segment Display

Visit “Arduino 7 Segment Display Interface” to learn more about 7-segment displays, and “Arduino 4-Digit 7-Segment LED Display” to learn about 4-digit 7-segment displays.

TFT LCD Display

The subsequent two Display Devices from Arduino are high-end add-ons (and even costly). Colorful TFT LCD Displays are the finest choice if you want to develop an easy-to-use Graphical User Interface (GUI) between the system and the final consumer.

Thin-Film-Transistor Liquid-Crystal-Display (TFT LCD) displays use Thin-Film Transistors to increase addressability and image contrast.

TFT-LCD-Display

TFT LCD Displays of Different Sizes

Some of the commonly available TFT LCD Displays for Arduino are:

  • 1.8” Display with a resolution of 160 x 128 Pixels.
  • 2.0” Display with a resolution of 220 x 176 Pixels.
  • 2.4” Display with a resolution of 320 x 240 Pixels.
  • 2.8” Display with a resolution of 320 x 240 Pixels.
  • 3.2” Display with a resolution of 400 x 240 Pixels.
  • 3.5” Display with a resolution of 480 x 320 Pixels.

TFT Touchscreen LCD Display

Typical TFT LCD screens only allow for the visual presentation of data. Additional hardware, such as a Rotary Encoder or Push Buttons, is required for system interaction. By adding a touchscreen to a TFT display, the TFT Touchscreen LCD Display addresses this issue.

TFT-Touchscreen-LCD-Display

TFT LCD Display with Touchscreen

It’s essentially the same as a standard TFT Display (in terms of screen size and resolution), except that it also supports touch input.

Please take note that I have not personally worked on any project that required the use of a TFT LCD Display or TFT Touchscreen LCD Display. Once I have finished working on those projects, I will update the tutorial links.

Conclusion

I hope all of you understand the list of Display Devices compatible with Arduino. We MATHA ELECTRONICS will be back soon with more informative blogs.

Leave a Reply

Your email address will not be published. Required fields are marked *