LCD 12864串行 通讯,在PICC9.0 编译没问题,在9.83 编译通过,但是运行不正常, pic16f877a
void SendByte(char Dbyte)
{
unsigned char i;
for(i=0;i<8;i++)
{
E_CLK = 0;
Dbyte=Dbyte<<1; //左移一位
RW_SID = CARRY; //移出的位给RW_SID
E_CLK = 1;
E_CLK = 0;
}
}
//* 函数名称 :ReceiveByte 串口接收一个字节
void WriteCommand(char Cbyte )
{
delay_ms(1);
SendByte(0xf8); //11111,RW(0),RS(0),0
SendByte(0xf0&Cbyte); //高四位
SendByte(0xf0&(Cbyte<<4));//低四位(先执行<<)
}
void WriteData(char Dbyte )
{
delay_ms(1);
SendByte(0xfa); //11111,RW(0),RS(1),0
SendByte(0xf0&Dbyte); //高四位
SendByte(0xf0&(Dbyte<<4));//低四位(先执行<<)
}
LCD 12864串行 通讯,在PICC9.0 编译没问题,在9.83 编译通过,但是运行不正常,
Dbyte=Dbyte<<1; //左移一位
RW_SID = CARRY; //移出的位给RW_SID
这一段无法得到正常的数据
|