Liquid crystal displays (LCD’s) are a commonly used to display data in devices such as calculators, microwave ovens, and many other electronic devices. In this tutorial, I will show you how to use a 16×2 LCD with an Arduino. 16×2 LCD is named so because; it has 16 Columns and 2 Rows. There are a lot of combinations available like, 8×1, 8×2, 10×2, 16×1, etc. but the most used one is the 16×2 LCD. So, it will have (16×2=32) 32 characters in total and each character will be made of 5×8 Pixel Dots.  A Single character with all its Pixels is shown in the below picture.

In this tutorial, I will show you how to use a 16×2 LCD with an Arduino.  As shown in the table below, eight of the pins are data lines (pins 7-14), two are for power and ground (pins 1 and 16), three are used to control the operation of LCD (pins 4-6), and one is used to adjust the LCD screen brightness (pin 3). The remaining two pins (15 and 16) power the backlight.The details of the LCD terminals are

Pin Configuration

Pin No:Pin Name:Description
1Vss (Ground)Ground pin connected to system ground
2Vdd (+5 Volt)Powers the LCD with +5V (4.7V – 5.3V)
3VE (Contrast V)Decides the contrast level of display. Grounded to get maximum contrast.
4Register SelectConnected to Microcontroller to shift between command/data register
5Read/WriteUsed to read or write data. Normally grounded to write data to LCD
6EnableConnected to Microcontroller Pin and toggled between 1 and 0 for data acknowledgement
7Data Pin 0  Data pins 0 to 7 forms a 8-bit data line. They can be connected to Microcontroller to send 8-bit data.These LCD’s can also operate on 4-bit mode in such case Data pin 4,5,6 and 7 will be left free.
8Data Pin 1
9Data Pin 2
10Data Pin 3
11Data Pin 4
12Data Pin 5
13Data Pin 6
14Data Pin 7
15LED PositiveBacklight LED pin positive terminal
16LED NegativeBacklight LED pin negative terminal


Leave a Comment

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.