数码管显示不正常的调试方法与步骤总结

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数码管显示不正常的调试方法与步骤总结
分类:单片机2011-10-12 21:50 1940人阅读评论(0) 收藏举报
数码管显示不正常大概有以下几种现象:
1,完全不显示;
2,显示部分段码;
3,显示部分位码;
4,显示闪烁;
5,以上几种综合。

解决办法:
步骤:
1,确定数码管是共阴还是共阳
2,检查数码管每段是否完好.
如果上面两条没问题,则:
若完全不显示:
检查电压是否加反,共阴的位选送低电平,共阳的位选送高电平
若某一位只显示部分段:
检查程序所送段码是否正确,注意共阴的段选送高电平,共阳的段选送低电平
若有一位或几位完全不显示:
(1)若静态显示(所有位显示一样的数):只需检查程序这几位送的电平是否正确
(2)若动态显示(扫描显示不同的数):若数字滚动显示或闪烁,则动态扫描速度过慢,应减少延时,加快扫描
若显示的数字缺胳膊少腿或三头六臂:
这种现象只存在于动态扫描情况下,称为鬼影。

原因是扫描过快导致上一个字符(视觉暂留结果)显示在当前字符上产生重叠
解决办法:
增长延时,减慢扫描
还有一种情况
若采用同时送段码和位码,则注意送段码前数据口要清零,如下
[cpp]view plaincopyprint?
1.INT_T0:
2.MOV TH0,#(65536-2000) / 256 ;2ms 2000us
3.MOV TL0,#(65536-2000) MOD 256
4.MOV P0,#00h;新加该程序最大的Bug在这里,之所以显
示不全是因为前几次显示加在后一次显示上导致重叠
5. ; 或影藏,解决办法是每次显示之前
将所有段码清零
6.MOV A,#DISPBUF
7.ADD A,DISPBIT ;DISPBIT+DISPBUF=40H-48H
8.MOV R0,A
9.MOV A,@R0
10.M OV DPTR,#TABLE
11.M OVC A,@A+DPTR
12.M OV P0,A ;段选
13.
14.M OV A,DISPBIT
15.M OV DPTR,#TAB
16.M OVC A,@A+DPTR
17.M OV P2,A ;位选
18.
19.I NC DISPBIT
20.M OV A,DISPBIT
21.C JNE A,#08H,KNA ;08h
22.M OV DISPBIT,#00H
今天帮同学调了一下这个程序,在这里记下一笔,做个小结。

相关文档
最新文档