Liquid crystals are a state of matter intermediate between that of a crystalline solid and an isotropic liquid.
A liquid crystal display device is a passive device. It doesn't produce any light to display characters, images, video; instead it alters the light traveling through it. Its internal structure is locally altered (pixel by pixel of the display matrix) by the presence of an external electric field, which causes an alteration of the incident light’s polarization state of selective pixels. The concept of controlling the amount of transmitted light by reorienting liquid crystals upon applying electrical field is the basis of the LCD industry today.
Herein, we first pursue to get familiar with the working principle of liquid crystal displays (Sections I and II.) Subsequently, in the experimental section, an Arduino microcontroller is used to operate a commercial LCD display. We will address controlling the LCD through parallel communication and serial communication methods; the latter uses an I2C adapter that allows driving the LCD with only two input wires. Applications include driving the LCD with 8 bit data bus, as well in a 4-bit data bus modality.
CONTENTS
I. Liquid Crystal Displays
I.1 The discovery
I.2 Materials involved
I.3 Principle of operation
I.4 Internal construction of a LCD-pixel
I.5 Addressing (driving) the pins of a display:
Static (direct) vs dynamic (multiplex) methods
1.6 LCD matrix screens
1.6.1 Simple Matrix Drive
1.6.2 Active Matrix Drive
II. Liquid Crystal fundamentals
II.1 Nematic and cholesteric liquid crystal mesophases
II.2 Liquid crystal as a birefringent material: Optical properties
II.2.1 Effect of sample thickness: Controlling light polarization
II.2.2 Propagation of light in cholesterol liquid crystals
III. Experimental procedure
III.1 Components of the Liquid Crystal display
III.1.1 ADM1602K-NSA-FBS-3.3v Liquid Crystal Display
III.1.2 The serial computer bus Inter-Integrated Circuit or I2C
III.1.3 LCD Pin connection
III.1.4 Instructions Table for the HD44780 LCD module
III.1.5 Character Table for the HD44780 LCD module
III.1.6 Arduino LiquidCrystal Library
III.2 Controlling the Liquid Crystal display through parallel communication
III.2.1 Getting familiar with the functioning of the LCD device
III.2.1.A Displaying “Hello World”
III. 2.1.B Scrolling the cursor
III. 2.1.C Implementing a custom character
III.2.2 Drive the LCD with 8 bit data bus
III.2.3 Drive the LCD with 4 bit data bus
III.3 Controlling the Liquid Crystal display through serial communication with the I2C Adapter
III.3.1 Serial-connection vs parallel-connection
III.3.2 Pins
III.3.3 The role of the I2C SDA and SCL wires
III.3.4 Determining the I2C Address
III.3.5 Implementing a custom character and displaying your name
III.3.6 Displaying “Portland State University, Physics Dept, PH315”