“定时器定时数码管显示的程序,数码管总是会有余辉怎么

2020-01-14 18:54发布

刚接触51 ,写了个定时器定时然后数码管显示的程序, 但是数码管总是会有余辉,每个管子显示1~9 的时候背景是亮的 。
显示程序在下面 , _we 是第几位 ,_du 是显示的字符编码 ,   
请教各位大神。为什么加上 delay(1) 之后就会没有余辉了呢? 我明明加了2个消隐的 语句了啊? 

ps :数码管 是 共阴型的 
void disp( uchar _we ,uchar _du)
{
        dula = 1 ;
        P0 = table[_du] ;
        dula = 0 ;
        P0 = 0xff ;                 // 消隐

        wela = 1 ;
        P0 = wecode[_we] ;
        wela = 0 ;
        P0 = 0x00 ;                 // 消隐

        delay(1) ;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
25条回答
hqwei_sz
1楼-- · 2020-01-17 16:24
我在用138做扫描8位数码管,1毫秒扫一位,哟发现也不够亮,而且某一位实际是显示2,但总会有其他段会被点亮,不知什么原因,如何去除,并增加亮度?谢
klxx68
2楼-- · 2020-01-17 17:25
消隐写的好奇怪,怎么消的
MCUStudent
3楼-- · 2020-01-17 18:44
首先显示正常数码时要加一定时间的延时以保证显示效果,其次在消隐时要让个码段在全灭状态,加以短的延时即可。
ywlzh
4楼-- · 2020-01-17 23:54
 精彩回答 2  元偷偷看……
冷月无声
5楼-- · 2020-01-18 01:01
lz同病相怜,顶一个
ZTQiang
6楼-- · 2020-01-18 02:26
学习了,顶一个,以前也是这个问题!

一周热门 更多>