1602按下后会有乱码的问题,其实根本上是硬件引起的。某些最小系统板的复位电路没做好,按下复位键后,就会产生乱码
解决方法:先执行LCD_write_command(0x02)(0x20应该也是可以的),先是写入了8线指令2,再写入8线指令0`,这样就将LCD改为4线传输,在紧跟这步之后,写入0x32,之后按4线写数据时,就没有高低错乱的问题,
以下为用IIC_1602写的代码。普通1602的解决思路是一样的。
void LCD_init(void)
{
LCD_write_command(0x20);//执行20,先是写入8线指令2x,这时才将LCD改为4线传输
LCD_write_command(0x32);//将8位转成四位
delay_nus(40);
LCD_write_command(0x28);
delay_nus(40);
Enable_LCD_write();
delay_nus(40);
LCD_write_command(0x28); //4位显示!!!!!!!!!!!!!!!!!!
LCD_write_command(0x0c); //显示开
LCD_write_command(0x01); //清屏
delay_nms(2);
}
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- stra.cn 版权所有 赣ICP备2024042791号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务