数码管在显示1这个数字的时候有时候闪,有时候有点暗,显示其他数字没有这种情况,请问为什么啊?
答案:1 悬赏:0 手机版
解决时间 2021-03-15 10:03
- 提问者网友:城市野鹿
- 2021-03-14 13:39
数码管在显示1这个数字的时候有时候闪,有时候有点暗,显示其他数字没有这种情况,请问为什么啊?单片机
最佳答案
- 五星知识达人网友:詩光轨車
- 2021-03-14 14:02
数码管,举个例子,8段共阴极数码管。其实它的结构很简单,就是8个LED发光二极管,这8个LED发光二极管的正极就是a b c d e f g dp(小数点)这8个,负极就8个LED连接在一起。单片机I/O口比如P0什么的不是有8个?正好连接到8个发光二极管的正极。然后把数码管负极接地。当你要显示数字,比如2时,2对应a b d e g这几个字母对应的LED亮,所以只要单片机接到abdeg的IO口置高电平就行了,正高负低,LED不就亮了?对应的LED亮了,不就显示对应的数字了?至于动态显示,一般是8个数码管吧?段的接口不变,还是P0口,而它们的负极呢,不再接地了,而是接到P2口(P1什么的都行)。P2口来控制哪个数码管亮。只有当P2口为低电平的时候,LED才有可能导通并亮。比如你要显示12345678,你可以先把P0口的段码调到1,也就是bc亮,P1.1、P1.2置高电平,这样就是显示1了,然后就是位选了,1是显示在第一位,所以你应该把P2.0置低电平,其他位置高电平,这样,第一个数码管就显示1了。显示2,则把P2.1拉低,其他拉高。这样弄一个循环,数码管不就从1依次显示到8了?不过由于单片机执行指令很快,如果直接12345678这样显示,由于太快,会导致数码管很暗,所以,你可以在切换数码管的时候,加上一点点的延时,不过不能太长,不然就会闪了。当然你也可以把显示程序放到中断里,比如没过10ms就显示一次,这样会更好一点。懂了吗?
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯