在设计单片机显示电路时,我们经常用的就是数码管显示,这里分享一款芯片可以一次性驱动8个数码管(可以带DP那种哟),只需要3个IO引脚与单片机相互连接就可以了。这里我们为什么选择TM1638这款芯片,当然是他足够便宜且用来设计电路也足够简单,所以我们是首选,以下是立创的价格仅供参考:
当然实际的价格比这个还便宜,但是到不了用分立元器件自己搭建的程度,所以还是需要根据需求选择,对我来讲几毛钱的片子驱动8位数码管就足够了。接下来我们还是隆重介绍了一下TM1638的优点:
• 采用功率CMOS 工艺• 显示模式 10 段×8 位• 键扫描(8×3bit)
• 辉度调节电路(占空比8 级可调)
• 串行接口(CLK,STB,DIO)
• 振荡方式:RC 振荡(450KHz+5%)
• 内置上电复位电路• 采用SOP28封装
简单总结一下:和单片机连接仅需要3个引脚,支持案件扫描(这里没有使用),可以调节亮度(再也不用手动更换电路或者调节闪频的方式调亮度了)。除此之外我们还需要关注下他的电气特性:
在实际使用的时候可以接共阳或者共阴极数码管,这里更加的推荐更阴极数码管,因为数据手册给出的注意事项:SEG1-10为P管开漏输出,GRID1-8为N管开漏输出,在使用时候,SEG1-10只能接LED的阳极,GRID只能接LED的阴极,不可反接。所以的用共阴极的数码管玩起来更简单:
以下是我用来驱动8位数码管绘制的电路原理图:
这里需要注意的一点是,官方给出的建议是连接在DIO、CLK、STB通讯口上三个100P电容可以降低对通讯口的干扰。
实际的电路上我们并没有加这三个滤波电容,因为实际测试时发现其影响并不大,后续会继续加上我们的软件工程如何搭建,如何编写驱动程序驱动数码管的显示,下篇再见咯~!