SparkFun Electronics will be closed on July 3rd, 2015 in observance of Independence Day. Any orders placed after 2:00pm MT on July 2nd will be shipped out after the weekend. Thanks!
LCD stands for Liquid Crystal Display. These displays contain a grid of liquid crystal dots, or pixels held between layers of glass etched with transparent electrodes. Liquid crystal molecules are normally twisted, but straighten out when electricity is applied to them. This affects the way light passes through the dot, allowing it to appear either darkened or clear. A HD44780 controller chip built into the display (it's underneath the black blob on the back) receives commands from your Arduino, and turns the pixels on and off to form various letters, numbers and symbols. The controller datasheet has a diagram of all the characters stored in the chip. This display also has an LED for backlighting, which is powered through LCD pins 15 and 16.
The kit comes with the display module, a strip of header pins, and a potentiometer to adjust the contrast of the display. You will need to solder the header pins to the display in order to plug it into your breadboard. Follow this link to our handy assembly guide, and come back here when you're done.
This display uses a parallel interface, which can be either 4 bits or 8 bits wide. We'll use 4 bits, since it requires fewer wires. It will take a total of 8 wires to connect the display to your Arduino; four for data, two to load the data, and two for power and ground. You will also need to connect the supplied potentiometer to the display; this is necessary to set the contrast of the display for best visibility. See the following schematic and layout for details:
Normally you would need to read the HD44780 controller chip's extensive datasheet to determine how to control this display. Fortunately, the Arduino comes with a built-in library called LiquidCrystal which does all the hard work for you. (A library is a prebuilt collection of software functions that you can easily include in your code).
Open the Arduino IDE, and load the example program: File > Examples > LiquidCrystal > HelloWorld. Upload it to your board, and "hello, world!" should appear on the display. If no message appears, the contrast may need to be adjusted. To do this, turn the potentiometer until "hello, world!" is at maximum contrast. If you still don't see anything, double-check your wiring.
If you do see "hello, world!", congratulations! Take a look at the example sketch, and try modifying it to display "hello, your name!" or any other text you'd like. Also take a look at the other example LiquidCrystal sketches, and the documentation on the Arduino.cc website to see how to write sketches to take advantage of the display.
Here's a few of the LiquidCrystal library commands to get you started. For the full list, see: http://arduino.cc/en/Reference/LiquidCrystal.
;// Tell the Arduino you want to use the LCD library LiquidCrystal lcd(12,11,5,4,3,2) // Create a new LiquidCrystal object named lcd // using the listed pins for a 4 bit data bus (as in the above schematic) lcd.begin(16,2); // Initializes the library for a 16 x 2 display lcd.clear(); // Clears the display and moves the cursor to upper left corner lcd.home(); // Just move the cursor to the upper left corner lcd.setCursor(col, row); // moves the cursor to column col and row row lcd.print(data); // prints a string ("hello, world!") or numerical data (data, BASE) to the display