glk12232-25 & pic18f8720 not work
Posted: Mon Jan 05, 2004 7:53 am
I have a Matrix-Orbital glk12232-25 connect to pic18f8720 .
Icannot to "speak" with my lcd.
this is my code:
void wait_end_procc(void){
while(SSPIF==0);
SSPIF=0;
}
void start_bit(void){
SSPIF=0;
SEN=1;
wait_end_procc();
}
void stop_bit(void){
SSPIF=0;
PEN=1;
wait_end_procc();
}
void send_byte(uns8 dta){
SSPIF=0;
SSPBUF=dta;
wait_end_procc();
}
uns8 receive_byte(uns8 adr){
Carry=1;
adr=rl(adr);
start_bit();
send_byte(adr);
TEST2=1;
RCEN=1;
while(RCEN);
TEST2=0;
SSPIF=0;
ACKDT=0;
ACKEN=1;
wait_end_procc();
stop_bit();
return SSPBUF;
}
void write_byte_protocol(uns8 adr, uns8 command, uns8 dta){
Carry=0;
adr=rl(adr);
start_bit();
send_byte(adr);
send_byte(command);
send_byte(dta);
stop_bit();
}
uns8 read_byte_protocol(uns8 adr, uns8 command){
uns8 _adr;
_adr=adr;
Carry=0;
adr=rl(adr);
start_bit();
send_byte(adr);
send_byte(command);
stop_bit(); // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
return receive_byte(_adr);
}
I'm use with "write_byte_protocol" function like this:
void clear_display(){
write_byte_protocol(80,254,88);
}
Finnaly the project not work .
thank for all.
Icannot to "speak" with my lcd.
this is my code:
void wait_end_procc(void){
while(SSPIF==0);
SSPIF=0;
}
void start_bit(void){
SSPIF=0;
SEN=1;
wait_end_procc();
}
void stop_bit(void){
SSPIF=0;
PEN=1;
wait_end_procc();
}
void send_byte(uns8 dta){
SSPIF=0;
SSPBUF=dta;
wait_end_procc();
}
uns8 receive_byte(uns8 adr){
Carry=1;
adr=rl(adr);
start_bit();
send_byte(adr);
TEST2=1;
RCEN=1;
while(RCEN);
TEST2=0;
SSPIF=0;
ACKDT=0;
ACKEN=1;
wait_end_procc();
stop_bit();
return SSPBUF;
}
void write_byte_protocol(uns8 adr, uns8 command, uns8 dta){
Carry=0;
adr=rl(adr);
start_bit();
send_byte(adr);
send_byte(command);
send_byte(dta);
stop_bit();
}
uns8 read_byte_protocol(uns8 adr, uns8 command){
uns8 _adr;
_adr=adr;
Carry=0;
adr=rl(adr);
start_bit();
send_byte(adr);
send_byte(command);
stop_bit(); // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
return receive_byte(_adr);
}
I'm use with "write_byte_protocol" function like this:
void clear_display(){
write_byte_protocol(80,254,88);
}
Finnaly the project not work .
thank for all.