You are on page 1of 1

LCD SEV_SEGMENT STEPPER_MOTOR

#include<16f887.h> #include<16f887.h> #include<16f887.h>


#use delay(clock_4000000) #use delay(clock_4000000) #use delay(clock_4000000)
#fuses INTRC,NOPUT,NOWDT,MCLR,PROTECT #fuses INTRC,NOPUT,NOWDT,MCLR,PROTECT #fuses INTRC,NOPUT,NOWDT,MCLR,PROTECT
,CPD,NOBROWNOUT,NOIEFM,NOFCMEN,NOLVP ,CPD,NOBROWNOUT,NOIEFM,NOFCMEN,NOLVP ,CPD,NOBROWNOUT,NOIEFM,NOFCMEN,NOLVP
#BYTE OSCN=0*8F #BYTE OSCN=0*8F #BYTE OSCN=0*8F
#BYTE PORTB=0*06 #BYTE PORTB=0*06 #BYTE PORTB=0*06
#BIT C0=0*7.0 #BYTE PORTD=0*08 #BIT RA0=0*5.0
#BIT C1=0*7.1 #BIT RD4=0*8.4 #BIT RA1=0*5.1
#BIT C2=0*7.2 #BIT RD5=0*8.5
#BIT RD6=0*8.6 void picinit(void);
unsigned int8 i; #BIT RD7=0*8.7
unsigned int8 msg1[]={" "}; void main()
unsigned int8 msg2[]={" "} unsigned int8 scode[10]={..........} {
unsigned int8 i, digit[]={....} OSCN=0*61
void picinit(void); picinit();
void lcdinit(void); void picinit(void); while(1)
void command(unsigned int8 R); {
void data(unsigned int8 R); void main() if (RA0==1)
{ {
void main() OSCON=0*61; while(1)
{ picinit(); {
OSCN=0*61 while(1); PORTB=0*09;
picinit(); { delay_ms(20);
lcdinit(); for(i=0;i,4;i++) PORTB=0*0C;
while(1) { delay_ms(20);
{ PORTB=scode[digit[i]]; PORTB=0*06;
for(i=0;i<16;i++) switch(i) delay_ms(20);
{ { PORTB=0*03;
command(0*08+i); case0;PORTD=0*00;RD4=1;break; delay_ms(20);
data(msg1[i]); case1;PORTD=0*00;RD5=1;break; }
delay_ms(10) case2;PORTD=0*00;RD6=1;break; }
} case3;PORTD=0*00;RD7=1;break; else if (RA0==1)
for(i=0;i<16;i++) } {
{ delay_us(2000); while(1)
command(0*C0+i); } {
data(msg2[i]); } PORTB=0*09;
delay_ms(10) } delay_ms(20);
} void picinit(void) PORTB=0*03;
} { delay_ms(20);
} set_tris_b(0*00) PORTB=0*06;
void command(unsigned int8 R) set_tris_d(0*00) delay_ms(20);
{ } PORTB=0*0C;
delay_ms(10); delay_ms(20);
PORTB=R; }
C0=0; }
C1=0; }
delay_us(2); }
C2=1; void picinit(void)
delay_ms(10); {
C2=0; set_tris_a(0*FF)
} set_tris_b(0*00)
void data(unsigned int8 R) }
{
delay_ms(10);
PORTB=R;
C0=1;
C1=0;
}
void picinit(void)
{
set_tris_b(0*00)
set_tris_c(0*00)
}
void lcdinit(void)
{
command(0*38);
command(0*38);
command(0*38);
command(0*00);
command(0*00);
command(0*00);
command(0*01);
command(0*01);
}

You might also like