|

楼主 |
发表于 2021-7-9 17:48:38
|
显示全部楼层
今天终于有空了,结贴结贴。问题解决了, 寄存器配置没有问题。 进行读取的时候先启动PAP寄存器读取,再设置RD 低电平 高电平就能正确读取了。可能原因: 先设置RD,后设置PAP寄存器读取的话,lcd发送过来的数据已过保持时间。
下面函数 屏蔽的三行代码就是读取像素异常的,红色代码是修正后的。 PAP->BUF 这个是芯片PAP读写的寄存器
u8 _READ_DB_LCD()
{
....
gpio_write(GS_LCD_RS,1);
gpio_write(GS_LCD_CS,0);
//gpio_write(GS_LCD_RD,0);
//gpio_write(GS_LCD_RD,1);
//PAP->BUF = 0x00;
PAP->BUF = 0x00;
gpio_write(GS_LCD_RD,0);
gpio_write(GS_LCD_RD,1);
data = PAP->BUF;
....
}
最后最后,感谢各路英雄的帮助和指导。。
|
|