[求助] 普中51单片机静态数码管显示问题

cheepy   2019-1-29 18:05 楼主
小白按照图中程序烧录,led1位置一直显示的是8且dp亮,想问下是什么情况
  • TIM图片20190129180251.png
  • TIM图片20190129180307.png
  • TIM图片20190129180311.png

回复评论 (14)

“想问下是什么情况”

这段程序,就是让LED1位置的数码管所有笔画包括小数点全亮。
点赞  2019-1-29 19:30
应该有个跳线帽,把跳线帽跳上,楼主可以拍张单片机的硬件图,跳上跳线帽就好了
点赞  2019-1-29 20:51
LSA LSB LSC相当于片选 选择了LED1
P0 段选 =0x3f 让LED1的每一段都亮
点赞  2019-1-29 21:12
引用: bqgup 发表于 2019-1-29 20:51
应该有个跳线帽,把跳线帽跳上,楼主可以拍张单片机的硬件图,跳上跳线帽就好了

跳线帽的话vcc和le跳在一起的
点赞  2019-1-29 21:33
引用: maychang 发表于 2019-1-29 19:30
“想问下是什么情况”

这段程序,就是让LED1位置的数码管所有笔画包括小数点全亮。

0x3f=0011 1111不是显示的是图上的段选a-f吗?
点赞  2019-1-29 21:35
引用: 常见泽1 发表于 2019-1-29 21:12
LSA LSB LSC相当于片选 选择了LED1
P0 段选 =0x3f 让LED1的每一段都亮

0x3f=0011 1111不是显示的是图上的段选a-f吗?
点赞  2019-1-29 21:35
引用: cheepy 发表于 2019-1-29 21:35
0x3f=0011 1111不是显示的是图上的段选a-f吗?

如果怀疑硬件有问题,把单片机拔掉,138和573也拔掉,LED1~LED8各脚依次施加电压(接地),图中标号LCD0~LCD7处也依次施加电压(接电源)。这样每次只应该有一段发光。若是某段不发光,或者有两段同时发光,均是错误,可以检查对应的联接导线。
点赞  2019-1-30 07:07
你的问题是什么?
你不懂这段程序的原理?还是认为这段程序有错误?
结合程序和电路来看的话,这段程序应该是让LED1显示数字“0”。
点赞  2019-1-30 09:10
我不知道这段程序是卖家提供的例程,还是你自己写的。
如果是卖家提供的例程,那应该有关于这段程序实现什么功能的描述。
如果是自己写的程序,应该在写程序前就有很明确的意图:要实现什么功能?
所以在这里,你没有说明这段程序本身要实现什么功能,最后的结果是不正确还是原理不明白(结果正确)。
但是根据你帖子里提供的信息,我感觉这段程序的目的是让LED1显示数字“0”,实际显示的却是LED1的所有段都点亮了,程序没问题,应该是电路中LED1的G段还有dp段有短路现象,并且是被错误的拉高了,所以这两个段才会点亮
点赞  2019-1-30 09:17
引用: maychang 发表于 2019-1-30 07:07
如果怀疑硬件有问题,把单片机拔掉,138和573也拔掉,LED1~LED8各脚依次施加电压(接地),图中标号LCD0~ ...

好,我试一下,谢谢
点赞  2019-1-30 11:51
引用: tiankai001 发表于 2019-1-30 09:17
我不知道这段程序是卖家提供的例程,还是你自己写的。
如果是卖家提供的例程,那应该有关于这段程序实现什 ...

对,本来是让他显示0,但是每段都会亮,我下次提问题的时候描述清晰一些,谢谢了
点赞  2019-1-30 11:51
引用: cheepy 发表于 2019-1-29 21:35
0x3f=0011 1111不是显示的是图上的段选a-f吗?

没有细看0x3f 这个的确是显示0  我给你讲的是编程的大概意思
点赞  2019-1-31 13:36

我遇到了跟楼主同样的情况,发现它不只是0,6 和 8和9和 a   都会出现八位数码管全亮

点赞  2019-10-17 21:06

正在学电子电路设计制作,正缺资料,感谢您无私分享,学习了。

点赞  2024-10-15 10:28
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复