HT1621写数据时序如下:
启动总线
写入地址
写入数据
结束总线
前3步都是对的,但是最后一步,你的程序是错的!
如下:
//-----***-LCD停止-***-----// void LcdStop(void) { LcdCs=1; Delay(10); }
应该修改为:
void LcdStop(void) { LcdData=1; LcdWr=1; LcdCs=1; Delay(5); }
另外启动的时候最好更改为:
void LcdStart(void) { LcdWr=1; LcdData=1; LcdCs=1; LcdCs=0; Delay(5); }
修改的原因(最后一步结束总线的时候):
当你写完最后一个字节的时候,如果改字节是0那么数据IO口可能永远是低,没有释放总线,导致以后写数据的时候可能会出现意向不到的错误!
以上是本人的理解不对的地方还希望多多指教!
另外你的签名借用一下(比较符合我的名字的定义或者说是意境)! |