Description:
16x2
LCD is one of the most used display unit. 16x2 LCD means that there
are two rows in which 16 characters can be displayed per line, and
each character takes 5X7 matrix space on LCD. In this program we are
going to connect 16X2
LCD module to
the 8051 microcontroller.
Interfacing
LCD with 8051 microcontroller might
look quite complex, but after understanding the concept it
would look very simple and easy. The 16*2 LCD commands are
shown in below:
Code:
#include<reg51.h>
/*-------------------------------------------------------------------------------------------------------------------------*/
sbit
rs=P1^4;
sbit
en=P1^5;
/*-------------------------------------------------------------------------------------------------------------------------*/
void
display(char*);
void
cmd(int);
void
data1(char);
void
lcd();
void
delay(int);
/*-------------------------------------------------------------------------------------------------------------------------*/
void
main()
{
lcd();
display("Hello");
while(1)
{
}
}
/*-------------------------------------------------------------------------------------------------------------------------*/
void
lcd()
{
cmd(0x38);
cmd(0x0e);
cmd(0x01);
cmd(0x06);
cmd(0x80);
}
/*-------------------------------------------------------------------------------------------------------------------------*/
void
cmd(int a)
{
P3=a;
rs=0; //RS =0 =>Command mode
en=1;
delay(100);
en=0;
}
/*-------------------------------------------------------------------------------------------------------------------------*/
void
display(char*s)
{
while(*s!='\0')
{
data1(*s);
s++;
}
}
/*-------------------------------------------------------------------------------------------------------------------------*/
void
data1(char x)
{
P3=x;
rs=1; //RS =1 =>Data mode
en=1;
delay(100);
en=0;
}
/*------------------------------------------------------------------------------------------------------------------------*/
void
delay(int n)
{
int
i,j;
for(i=0;i<n;i++)
for(j=0;j<100;j++);
}
/*-------------------------------------------------------------------------------------------------------------------------*/
Circuit
Diagram:
No comments:
Post a Comment