我使用的LCD如下图,32段LCD,可以显示4位数字,现在最低位偶尔显示不出来(具体表现:最低位每一段都淡淡地发亮,但是不会随数字变化而闪烁)。
LCD使用的HT1621B驱动,LCD模块的5个输入CS、WR、DA、VC、GND都接到
STM32F4的GPIO口,IO设置为push-pull输出,无上下拉。
现在的情况是,十次开机可能有一两次显示不正常,大部分时候都正常。一开始我怀疑是焊接问题,换了两块板子和三个LCD模块,结果都一样。而且某次开机,一旦显示正常,就会一直正常;同样,开机后如果不正常,就会一直不正常。这样的现象也不像是硬件的问题,但更不像是软件的问题。
最好的办法可能是示波器观察正常和不正常的波形。但我以前没用过LCD模块,代码是稍微修改了别人的就拿来用了,对LCD和驱动的时序不太了解。所以先请大家帮我分析一下可能是什么原因。
我假设这个是一个模块和你另一个板子连接,如果你怀疑这个板子有问题,那么换几块试试,如果你怀疑主板问题,换主板试试,有效解决虚焊短路问题。
还有一个GND你确定是连接到一个GPIO上了?
可能存在的问题就是,接地IO拉低,是否是直接连到地?这个问题需要斟酌,IO内部结构需要考虑,否则这是一个浮地,当电路大一点的话,结果可能出乎意料。
最佳答案
一周热门 更多>