菜鸟起飞 (第五篇) ---- 共阳极数码管 分段点亮问题
2014-04-142.2万
AI 快速预览详细
本文讨论了共阳极数码管逐段点亮的问题。问题描述为数码管每一段都能点亮,但无法实现逐段点亮和熄灭的效果。最终发现原因是共阳极数码管正极接5伏,负极接各针脚,需要先灭灯才能实现延时效果。经验总结是直接写自己需要的状态,避免考虑之前的每一段状态。
|
人在江湖,身不由己。最近事情多,学习进度很慢。 原本计划趁周末把书上所有的实验全都做了,没想到一个简单的数码管居然成了障碍。 问题描述: 数码管每一段都能点亮,我想做一个逐段点亮,然后再逐段熄灭的效果,以此作为数码管实验的结束。 逐段点亮的程序一运行,每段都同时亮起来,没有延时效果。 中间软件、硬件各种折腾、测试略去不表。 最终病因: 共阳极数码管正极接5伏,负极接各针脚。各针脚缺省是低电平,数码管是点亮的,所以要先灭灯。 如果用共阴极数码管的,就不会犯这个错。 经验总结: 当时看书时,觉得书上的程序编得很啰嗦,显示一个数字要把每一段的状态都写一遍。 现在看来,这正是智慧之所在。根本不用考虑之前每一段是什么状态,直接写自己需要的。这样不会犯错误。 |




我来谈谈我的意见啦。您说的“共阳极数码管正极接5伏,负极接各针脚。各针脚缺省是低电平,数码管是点亮的,所以要先灭灯。”,这句话中“各针脚”指的是Arduino的管脚吗?如果是的话,应该默认是高阻状态,不是低电平。因为高阻状态电平不能确定,所以点亮数码管是很有可能的,而且比正常点亮时暗淡一点。:D