但是今天我要说的是很多人都是用延时的方法写的1602液晶读写数据、写命令时间间隔,这是不精确的,我今天是用的是1602自带的忙检测功能,也就是写数据和命令之前我先判断液晶是否忙,不忙我再读写。
//忙检测
void LCD_BusyDect(void)
{
TRISEbits.TRISE7 = 1; //忙检测位输入
do
{
E=0;
RS=0;
RW=1;
Nop();
E=1;
Nop();Nop();
}while(PORTEbits.RE7);
TRISEbits.TRISE7 = 0; //恢复忙检测位端口输出