HT1632C数码管驱动芯片驱动共阴LED存在bug,在此提醒其他使用者注意。

2012年06月26日 02:40    发布者:kbgyzp
上电初始化完成后就全部亮了,我还没有刷屏呢,怎么就全亮了呢?
怎么也想不明白,怀疑过驱动程序,怀疑过电源,怀疑过接线,怀疑过干扰,怀疑过封装管脚搞错了,怀疑过灌电流冲击,所有想到可以怀疑的都怀疑了,最后也没有解决这个问题。

实在没办法了,焊掉所有的LED,通过程序调试各种输出状态,进行对比,终于发现,改芯片在驱动共阳时是没问题的,ROW端和COM端可以达到预想的输出状态。但是在驱动共阴时,在不显示的状态下,COM端和ROW端存在压差,导致LED不受控的全亮了。

由于很多人都是使用这个芯片使用共阳接法驱动led点阵,所以不存在这个问题。很少有人使用共阴接法驱动8字数码管,所以网上也很少提到这个问题。

http://www.amobbs.com/thread-4941565-1-1.html发这个帖子的人应该碰到了和我一样的问题,大家的回答也是基于共阳的用法,认为不存在问题,后来也没了下文。

在此发此贴就是提醒以后有碰到这个问题的人少走弯路,不要像我一样被折腾。

网友评论

sunmonth 2012年06月26日
貌似不会有这问题吧?

共阴的时候,你说不显示(全灭)不受控制,请问,不显示的时候,你给数码管发的位和段分别是高电平,还是低电平?

最好把你的原理图贴上来,是不是你共阴的接线不对,你com设置的是n-mos还是p-mos?


官方的回答
Question 2
HT1632C和HT16K33適用於共陰還是共陽的LED陣列設計呢?
Answer

共陰或共陽的LED陣列都可使用,只要LED陣列的row/com數在IC支援的範圍內即可。 HT1632C的RAM資料格式是共陽,HT16K33的RAM資料格式是共陰,但兩者兩種格式都可支持的,資料格式適當的轉換即可。
huizijingxin 2012年06月26日
砖砖做技术的态度值得表扬:lol
kbgyzp 2012年06月26日
貌似不会有这问题吧?

共阴的时候,你说不显示(全灭)不受控制,请问,不显示的时候,你给数码管发的位和段分别是高电平,还是低电平?

最好把你的原理图贴上来,是不是你共阴的接线不对
sunmonth 发表于 2012-6-26 09:01 http://www.eechina.com/images/common/back.gif

图暂且就不贴了,因为图的内容很多,需要处理。
如果您也用过这个芯片,而且是共阴接法,我可以抽时间贴上图跟你好好沟通下。

对于共阴接法,能让数码管亮,就是COM端是高电平,ROW端是低电平;能让数码管灭,就是COM端和ROW端都为低电平,或都为高电平。
我发送的位段是全0xFF或全0x00,这两个我都试验过,无论这个芯片的显存格式是什么样的,总有一个是可以点亮或关灭的吧。

可是离奇是是在共阴时,COM端输出的是高电平,ROW端也是高电平,COM端输出的电压比ROW端高1V多,LED就不受控的全亮了。

我设置为共阳时,COM端和ROW端输出的电平就正常。

所以我认定是芯片的问题。

我用过的液晶和数码管的驱动芯片各不下五种,我自信不是我驱动程序的问题。
sunmonth 2012年06月26日
你com设置的是n-mos还是p-mos?
kbgyzp 2012年06月26日
当然,出现问题首先怀疑的是自身问题,比如电路不合理,程序驱动时序不合理等,但是芯片的问题也不是没有,我就曾经碰到过好多芯片的bug问题。
举两个例子
1.STM32的I2C就存在中断优先级的bug,必须要设置为最高优先级,否则就可能会死掉。
2.贝岭的液晶驱动芯片BL55024也存在bug,这个片子的bug更有意思,断开该芯片的电源,竟然也能把液晶点亮,而且刚上电时容易花屏。
后来找到原因竟然是通过I2C的电就能把它给驱动工作,所以液晶继续亮,而且上电时通过I2C的电使芯片内部经脉倒流,导致BL55024直接死掉,液晶花屏,只有重新上电才能恢复。
花屏问题当初联系过贝岭,他们做试验确定确实存在这个问题,给出的解释是芯片确实有bug,但是他们也没说清具体什么原因。后来发现经脉倒流这个原因后控制对改芯片的操作问题就解决了,当然,解决办法是不会反馈给贝岭的,呵呵。

还有好多芯片的bug,其实芯片出bug不可怕,一般知道都能绕过去,可怕的是不知道是bug,而且给不出合理的原因。

这也是我发此贴的原因
McuPlayer 2012年06月26日
BL55024大约是什么价格?

不过55024不是LED是LCD吧
kbgyzp 2012年06月26日
共阴应该设置PMOS吧,这样是由COM流向ROW。

我一度怀疑是设置什么MOS的问题,PMOS和NMOS我试验过多次,他们的手册就是不说共阴怎么设,共阳怎么设,光说PMOS,NMOS,搞的使用者很疑惑,后来我还专门查PMOS和NMOS到底怎么回事
kbgyzp 2012年06月26日
手册中也没提到电源中需不需要接去耦电容的问题。看看人家STM32,用几个去耦104电容都写的明明白白。
我也曾一度怀疑过是不是我给该芯片的去耦电容用少了,导致电源干扰大,芯片直接死机了,后来排除了这个担忧。

最近一周时间,我被这个一直感觉很简单的数码管驱动快折腾死了,真的想杀人
kbgyzp 2012年06月26日
貌似不会有这问题吧?

共阴的时候,你说不显示(全灭)不受控制,请问,不显示的时候,你给数码管发的位和段分别是高电平,还是低电平?

最好把你的原理图贴上来,是不是你共阴的接线不对,你com设置的是n-mos还 ...
sunmonth 发表于 2012-6-26 09:01 http://www.eechina.com/images/common/back.gif

我看过那个官方回答了,但这个芯片默认是共阳的,我很怀疑他们验证过共阴吗?

谢谢sunmonth,看来你为了我这个问题没少忙活,谢谢。
kbgyzp 2012年06月26日
是LCD,相当便宜,好像1块钱左右的样子,或者不到。
那时我们用那个芯片用的量相当大,几十万片的用啊。当时已经没法换液晶驱动芯片了,当时贝岭也没招了,后来才找到的解决办法
kbgyzp 2012年06月26日
砖砖做技术的态度值得表扬:lol
huizijingxin 发表于 2012-6-26 09:23 http://www.eechina.com/images/common/back.gif
妹妹,不是我的态度问题了,是最近被这个问题折腾的死的心都有了,当找到问题的原因时,特希望大家不要重蹈我的覆辙。
kbgyzp 2012年06月26日
为什么非要用HT1632C呢?因为我显示的内容很多,接近20个8字数码管。
而且我的显示接口兼容LED显示,LCD显示,TFT彩色显示,只要插上不同的显示板,cpu就可以识别是什么显示,调用什么显示驱动程序。

如果换了其他芯片或I2C的芯片,和cpu的连线要超过3根,而且这个芯片很便宜,才3块多钱。
McuPlayer 2012年06月26日
HT1632C这个3块钱能拿到货吗?
kbgyzp 2012年06月26日
可以,而且是现货,我拿的3.2元,要了168只,淘宝上有家专门做合泰的各种芯片的。要是要几片的话3.5,一托盘是84只,一盒好像5托盘。
需要的话给你发链接,在这里发就有广告嫌疑了,呵呵
sherwin 2012年06月26日
嗯,砖砖做技术的态度好,值得表扬!

但是哥哥我做人的态度也很好的,妹妹咋不表扬一下呢?太偏心了吧   :(
figoxwm 2016年10月17日
不知楼主还在不在这个论坛了,我也遇到这个问题,不知道你后来是怎么解决的?
Zaxife 2018年06月03日
2011年的V1.2.0版的PDF资料,第7页左上角的表格明中ab显示控制确表示使用N-MOS/还是P-MOS.........
这片子可以驱动48个8段数码管的.