Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

#include<reg51.

h>
sbit rs=P3^0 ;
sbit rw=P3^1;
sbit en=P3^2;

sbit R0=P2^0;
sbit R1=P2^1;
sbit R2=P2^2;
sbit R3=P2^3;

sbit C0=P1^0;
sbit C1=P1^1;
sbit C2=P1^2;
sbit C3=P1^3;

void lcdcmd(void);
void delay(void);
void displayCMD(void);
void INIT(void);
void DisplayMSG(void);
void ClearLCD(void);
unsigned char keyb(void);
void delay2(void);

void main(void)
{

unsigned j=0;

INIT();

DisplayMSG();
while(1){

j=keyb();

P0=0X8E;
lcdcmd();
delay();
P0=j;
displayCMD();

delay2();
delay2();

delay2();

j=keyb();
P0=j;
displayCMD();

delay2();
delay2();
delay2();

}
}

void INIT(void)
{
P0=0X38;
lcdcmd();
P0=0X0f;
lcdcmd();
P0=0X01;
lcdcmd();

//5x7 character display


//send command code to the instruction register
// display ON cursor blinking
//send command code to the instruction register
// clear screen
//send command code to the instruction register

void lcdcmd(void)
{
delay();
rs=0;
rw=0;
en=1;
delay();
en=0;
return;
}
void displayCMD(void)
{
delay();
rs=1;
rw=0;
en=1;
delay();
en=0;
}

void delay(void)

{
unsigned int j;
for(j=0;j<100;j++);
}

void DisplayMSG(void)
{
char *P,t;

char code MSG1[]= "ENTER any NUM: ";

P=&MSG1;

P0=0X80;
lcdcmd();

for(t=0;t<16;t++)
{
P0=*P++;
displayCMD();
delay();
}

void ClearLCD(void)
{
P0=0X01;
lcdcmd();
}

unsigned char keyb(void)


{
unsigned char KEY=0;

P2=0x0f;
P1=0x0f;
CHECKKEY:

if (C0==1)
if (C1==1)
if (C2==1)
if (C3==1) goto CHECKKEY;
R0=1;
R1=0;
R2=0;
R3=0;

if (C0==0) KEY=0x30;
if (C1==0) KEY=0x31;
if (C2==0) KEY=0x32;
if (C3==0) KEY=0x33;

R0=0;
R1=1;
R2=0;
R3=0;

if (C0==0) KEY=0x34;
if (C1==0) KEY=0x35;
if (C2==0) KEY=0x36;
if (C3==0) KEY=0x37;

R0=0;
R1=0;
R2=1;
R3=0;

if (C0==0) KEY=0x38;
if (C1==0) KEY=0x39;
if (C2==0) KEY=0x41;
if (C3==0) KEY=0x42;

R0=0;
R1=0;
R2=0;
R3=1;

if (C0==0) KEY=0x43;
if (C1==0) KEY=0x44;
if (C2==0) KEY=0x45;
if (C3==0) KEY=0x46;

return(KEY);

}
void delay2(void)
{
unsigned int j,k;
for(j=0;j<650;j++){
for(k=0;k<65;k++);
}
}

You might also like