Wednesday 3 June 2015

keypad--pic

#include<htc.h>


#define a RB0
#define b RB1
#define c RB2
#define d RB3
#define e1 RB4
#define e2 RB5
#define e3 RB6
#define en RC1
#define rs RC0

void delay(int s);
void lcddisp(char data);
void lcdcmd(int cmd);
void intlcd();

void delay(int s)
{
while(s--);
}
void lcddisp(char data)
{
rs=1;
PORTD=data;
en=1;
delay(10);
en=0;

}
void lcdcmd(int cmd)
{
rs=0;
PORTD=cmd;
en=1;

delay(10);
en=0;
}
void intlcd()
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0E);
delay(10);
lcdcmd(0x01);
delay(10);
lcdcmd(0x06);
delay(10);
lcdcmd(0x80);


}
void main()
{
int s;
PORTA=0x00;
PORTB=0x00;
PORTC=0x00;
PORTD=0x00;
TRISD=0x00;
TRISB=0xf0;
TRISC=0xc0;
intlcd();
lcddisp('0');
lcddisp('k');
delay(2000);
lcdcmd(0X01);


while(1)
{


a=1;
while(a==1)
{
if(e1==1 && e2==0 && e3==0)//1 pressed
{
lcddisp('1');
while(e1==1 && e2==0 && e3==0);
delay(500);

}

if(e1==0 && e2==1 && e3==0)//2 pressed
{
lcddisp('2');
while(e1==0 && e2==1 && e3==0);
delay(500);
}

if(e1==0 && e2==0 && e3==1)//3 pressed
{
lcddisp('3');
while(e1==0 && e2==0 && e3==1);
delay(500);
}
delay(1250);
a=0;
}

b=1;
while(b==1)
{
if(e1==1 && e2==0 && e3==0)//4 pressed
{
lcddisp('4');
while(e1==1 && e2==0 && e3==0);
delay(500);

}

if(e1==0 && e2==1 && e3==0)//5 pressed
{
lcddisp('5');
while(e1==0 && e2==1 && e3==0);
delay(500);
}

if(e1==0 && e2==0 && e3==1)//6 pressed
{
lcddisp('6');
while(e1==0 && e2==0 && e3==1);
delay(500);
}
delay(1250);
b=0;
}

c=1;
while(c==1)
{
if(e1==1 && e2==0 && e3==0)//7 pressed
{
lcddisp('7');
while(e1==1 && e2==0 && e3==0);
delay(500);

}

if(e1==0 && e2==1 && e3==0)//8 pressed
{
lcddisp('8');
while(e1==0 && e2==1 && e3==0);
delay(500);
}

if(e1==0 && e2==0 && e3==1)//9 pressed
{
lcddisp('9');
while(e1==0 && e2==0 && e3==1);
delay(500);
}
delay(1250);
c=0;
}

d=1;
while(d==1)
{
if(e1==1 && e2==0 && e3==0)//* pressed
{
lcddisp('*');
while(e1==1 && e2==0 && e3==0);
delay(500);

}

if(e1==0 && e2==1 && e3==0)//0 pressed
{
lcddisp('0');
while(e1==0 && e2==1 && e3==0);
delay(500);
}

if(e1==0 && e2==0 && e3==1)//# pressed
{
lcddisp('#');
while(e1==0 && e2==0 && e3==1);
delay(500);
}
delay(1250);
d=0;
}
}
}



No comments:

Post a Comment