打印
[51单片机]

数码管动态显示

[复制链接]
1001|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Windowsxp2012|  楼主 | 2014-11-6 19:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
数码管显示999-0;个位为什么闪烁?如何改善?现附程序如下,请大神指点!!!!!!!!
sbit shi=P1^2;
sbit bai=P1^1;
unsigned int a,b,c, j;
#define uint unsigned int
void delay(uint x)
{
        for(a=x;a>0;a--)
                for(b=110;b>0;b--);
}
main()
{           while(1)
        {
               
               
                for(c=999;c>0;c--)
       
                        {
                            //delay(100);
                                   bai=0;
                                P0=shizhong[c/100] ;
                                delay(8);
                                P0=0xff;
                                bai=1;

                                  shi=0;
                                P0=shizhong[c%100/10] ;
                                delay(8);
                                P0=0xff;
                                shi=1;
               
                                ge=0;
                                P0=shizhong[c%10];
                                delay(24);
                                P0=0xff;
                            ge=1;
                        }

          

        }
}

相关帖子

沙发
ddllxxrr| | 2014-11-6 19:52 | 只看该作者
P0=0xff; 都去掉,delay(8),小点,或去掉试试

使用特权

评论回复
板凳
w285694980| | 2014-11-6 23:19 | 只看该作者
P0=0xff; 都去掉,delay(8),小点,不能去掉 不然可能有重影  你把晶振频率调大一点  让程序刷新的快一点

使用特权

评论回复
地板
ayb_ice| | 2014-11-7 08:03 | 只看该作者
sbit shi=P1^2;
sbit bai=P1^1;

#define uint unsigned int

void delay(uint x)
{
        unsigned int a,b;

        for(a=x;a>0;a--){
                for(b=110;b>0;b--){

                }
        }
}

void main(void)
{
        while(1)
        {
                U8 c2;
                int c1;

                for(c=999; c>=0; c--){
                        for(c2=0; c2<100; c2++){
                                //delay(100);
                                bai=0;
                                P0=shizhong[c/100] ;
                                delay(8);
                                P0=0xff;
                                bai=1;

                                shi=0;
                                P0=shizhong[c%100/10] ;
                                delay(8);
                                P0=0xff;
                                shi=1;

                                ge=0;
                                P0=shizhong[c%10];
                                delay(8);
                                P0=0xff;
                                ge=1;
                        }
                }
        }
}

使用特权

评论回复
5
Windowsxp2012|  楼主 | 2014-11-20 19:38 | 只看该作者
我在此深表感谢!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

48

帖子

1

粉丝