Arduino/C2/Arduino-with-LCD/English
Title of script: Arduino with LCD
Author: Manivel and Nirmala Venkat
Keywords: Arduino UNO board, Arduino IDE, Compile and upload, LCD, Video tutorials
Visual Cue | Narration |
Slide 1: | Welcome to the Spoken Tutorial on Interfacing Arduino with LCD. |
Slide 2:
Learning objectives |
In this tutorial, we will learn to:
|
Slide 3:
Pre-requisites |
To follow this tutorial, you should have:
|
Slide 4:
System Requirement |
Here I am using:
|
Slide 5(a):
External devices |
We also require some external devices such as:
|
Slide 5(b);
External devices |
* Soldering Iron
|
Now, let us see the details of the circuit connection. | |
Show Image of LCD Pins | Here we see that there are 16 pins in the LCD. |
Point to Pin 1 or GND and Pin 2 or VCC | Pin 1 is the ground pin represented by GND.
Pin 2 is the power supply pin of 5 volts which is represented by VCC. |
Point to Pin 3 (VO) | VO is the LCD contrast pin. Here you have to connect a potentiometer.
This will allow a variable voltage to control the contrast of the LCD. |
Point to Pin 4 – RS
Text to be displayed: Pin (High) – writing data to the LCD Pin(Low) – Instructions or Commands |
RS stands for Register Select.
It can be used as a command register or a data register. Command register is used for placing the command to be displayed. And the data register is used to place the data. |
Point to Pin 5 – RW
Text to be displayed: Pin(High) – Read from LCD Pin(Low) – Write to LCD |
RW is a Read Write pin.
We can either read data from the LCD or write to the LCD. |
Point to Pin 6 – Enable pin | E represents the Enable pin. This enables LCD to accept information. |
Point to Pin D0-D7 | These are data pins.
The data and commands are sent to the LCD through these pins. |
Point to Pin 15-16
Text to be displayed: Pin 15 - Anode of the back light LCD Pin 16 - Cathode of the back light LED |
These are LCD Backlight pins.
These are used to power the LCD, control the display contrast, turn on or off the LCD backlight etc. Pin 15 is the Anode of the backlight LCD. Pin 16 is the Cathode of the backlight LCD. |
So far, we have seen the pin details of the LCD. | |
Let us switch to the soldering stations to see how we can do the soldering. | |
Here, we have:
| |
First, put the external pin on the LCD, as shown. | |
Next, apply the solder paste to the tip of the external pins, as shown in the video. | |
Then connect it again.
Place the LCD with the external pin firmly on the flat surface, as shown. Then it will not shake while we do the soldering. | |
Take the solder rod with little paste and touch the tip of the wire, as shown.
Hold it for few seconds so that the wire melts and apply to the external pin, as shown. | |
I have done soldering for two pins. See the close up of the soldering done for the two pins.
Likewise, do the soldering for the rest of the pins. | |
Let us now switch to the circuit diagram for this experiment. | |
Potentiometer is connected as shown to control the contrast of the LCD.
Potentiometer is a small sized electronic component used to measure voltage. | |
Pin number 11 is connected to enable and pin number 12 is connected to register select.
Read write pin is connected to ground which means we are writing to the LCD. | |
point to data pins | We are using only 4 data lines for our experiment. |
I have setup the Arduino and LCD, as per the circuit diagram.
Our aim is to write two strings on the LCD display. | |
Switch to Arduino IDE | Now we will write the program in the Arduino IDE.
Switch to Arduino IDE. |
First we will go through the reference manual for the Liquid crystal library. | |
Click Help >> reference | In the Menu bar, click Help and then reference.
This will open an offline page. |
Click on Reference >> Libraries | Under Reference section, click on Libraries. |
Scroll down | Then scroll down to see the available standard libraries. |
Click on LiquidCrystal.
Highlight the instruction |
Click on LiquidCrystal.
Read the description to know more about the available functions. |
Highlight the manual and then show the circuit diagram | It says, it works with 4 bit or 8 bit data lines. |
Point to the manual | Next, let us see the LiquidCrystal function and its parameters. |
Click on LiquidCrystal function. | It is always a good practice to refer to the manual for its functions.
Click on LiquidCrystal function. |
Highlight the 8 bit and then the 4 bit | The syntax shows how it is used for 8 bit or 4 bit. |
Highlight the First line in the syntax heading | For our experiment, we will use the first line syntax. |
Switch to the Arduino IDE | Switch to the Arduino IDE. |
First we will include the Liquid crystal library here. | |
Click Sketch>>Include Library >> LiquidCrystal
Point to the inserted file |
In the Menu bar, click Sketch and Include Library.
Then select LiquidCrystal. This will insert the LiquidCrystal.h file, as shown. |
Type LiquidCrystal lcd(12,11,5,4,3,2) | Now, type the code as shown.
Let me explain the parameters. |
Point to lcd variable | lcd is a variable of type Liquid crystal. |
Point to first parameter | First parameter is Register Select.
Register Select is connected to pin 12 of Arduino board. |
Point to second parameter | Second parameter is Enable. It is connected to pin 11. |
Point to next 4 parameters | The next 4 parameters are data lines of LCD. |
Highlight the source code | d4, d5, d6 and d7 of LCD are connected to pin 5, 4, 3 and 2 of the Arduino board. |
Highlight the source code | We are initializing the library with pins.
This line of code can be outside the void setup function. |
Type lcd.begin | In the void setup function, we will write the initial setups required for the experiment.
There is a function called begin. |
Switch back to the reference manual. | Let us see the manual for the description and the parameters for this function.
Switch back to the reference manual. |
Highlight the description and read it. | The manual says-
|
Highlight the parameters. | Now, let us see the parameters.
Lcd: A variable of type liquid crystal cols: the number of columns that the display has. We have 16 columns in our LCD. rows: the number of rows that the display has. We have 2 rows. |
Switch back to Arduino IDE. | Switch back to the Arduino IDE. |
Type,
lcd.begin(16,2); |
Now, type: lcd.begin open bracket 16 comma 2 close bracket semicolon. |
Type,
lcd.setCursor(0,0); |
Set Cursor command will position the cursor in the specified row and column in the LCD.
Zero comma zero means zeroth row and zeroth column. |
There is another command called print which will print text on the LCD. | |
Show the print command in the manual. | Let us refer the manual for the description and syntax. |
Type,
lcd.print(“First row”); |
Type: lcd.print and enter some text, say “First Row”. |
Let me explain the program. | |
Highlight each line | This program will print on a 16 by 2 configuration LCD.
Set the cursor to first position. lcd.print will print the text “First row” in the LCD. |
Click on compile and upload button on the toolbar | Let us compile and upload the program. |
Point to the output “First Row” | We can see the output “First row” displayed on the first line. |
Point to the second row | There is nothing displayed on the second row. |
Let us change the program to print on the second line also. | |
Copy and paste the above three lines. | Copy and paste the code. |
Remove the first line | Remove the line “lcd.begin” as it is initialized at the starting of the program. |
Change the setcursor code to 0 and 1 | Change the setcursor command to 0th column and 1st row as shown. |
Change the text to “second row” | Change the print command text to “second row” |
Click on compile and upload button on the toolbar | Now let us compile and upload the program. |
Point to the output in the second row | The text is displayed in the second row as well. |
Point to the void loop() | We didn't use any code in the void loop.
But, still we need to keep the loop template. This is because a loop function is required by the Arduino syntax. |
Once the text is sent, it is there forever. | |
Change the program | Let us change the cursor position to the 3rd column in the second line. |
Compile and upload the program | Again, compile and upload the program. |
Point to the output | Note the change in the column position in the second row. |
Show the manual function list | Switch back to our function list in the manual. |
Point to the various functions in the manual | We can see there are many more functions such as scrollDisplayRight, scrollDisplayLeft etc.
|
This brings us to the end of this tutorial. Let us summarize. | |
Slide 10:
Summary |
In this tutorial, we learnt to:
|
Slide 11:
Assignment |
Do the following assignment.
|
Slide 12:
About Spoken Tutorial project
|
The video at the following link summarizes the Spoken Tutorial project.
Please download and watch it. |
Slide 13:
Spoken Tutorial workshops The Spoken Tutorial Project Team
|
The Spoken Tutorial Project Team:
For more details, please write to us. |
Slide 14:
Forum for specific questions |
Please post your timed queries in this forum. |
Slide 15:
Acknowledgement
|
Spoken Tutorial project is funded by NMEICT, MHRD, Government of India.
More information on this mission is available at this link. |
This tutorial has been contributed by FOSSEE and Spoken Tutorial Project, IIT Bombay.
Thanks for watching.
|