A 1602 liquid crystal display (LCD) module consists of 16 columns and two rows. This means that the LCD can display 16 characters per line (16 Characters x 2 Line). The LCD has found a wide range of applications because of its cheap price and the ease to program. The LCD can display the alphabet and number characters making it an alphanumerical display module. Each character is built on a 5×8 pixels dots. It is also possible to display special and custom generated characters on this type of display. See the datasheet.
Pinouts and Pin description of a 1602 liquid crystal display module
The VSS and the VDD pins are used to power the LCD and are connected to the ground and +5 volts respectively. VO pin is for adjusting the contrast of the LCD and is normally connected to a potentiometer (variable resistor). RS pin is the Register Select pin. This will select data register when high, and command register when low. Read/Write (R/W) pin is used to toggle the LCD between the read from and write to the register operations.
When set low, R/W pin will write to the register. While on the other hand, when set high, it will read from the register. This pin is normally grounded for the data writing operations to the LCD as in our example below. Enable (E) pin is the data read/write operations enable signal. Pins D0 – D7 are for data transfer. D0 – D3 is restricted to 8-bit data. For our case, we will be using pins D4 – D7 for both the 4 bits and 8 bits data transfer. BLA and BLK are for powering the LCD backlight with +5volts and ground respectively.
The 1602 LCD can be connected directly to the micro-controller boards such as the Arduino. The other alternative is to use the I2C module. The module will help minimize the number of pins to be taken from the micro-controller while interfacing it with the LCD (LCD I2C).