标题:
各位老师,我的累加(1-99)在显示时有阴影,怎么消除?
[打印本页]
作者:
reporter
时间:
2013-10-14 10:29
标题:
各位老师,我的累加(1-99)在显示时有阴影,怎么消除?
我的累加(1-99)在显示时有阴影,怎么消除?
在显示5时,你会看到9.
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit dua=P2^2;
sbit wei=P2^3;
uchar bai,shi,ge,num,a;
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void init()
{
        num=0;
        TMOD|=0x01;
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        EA=1;
        ET0=1;
        TR0=1;
}
void timer0_plus() interrupt 1
{
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        a++;
        if(a==20)
            {
        a=0;
                num++;
            if(num==100)
                {       
                        num=0;
                }
                bai=num/100;
                shi=num%100/10;
                ge=num%10;
                }
}
void delay(uint t)
{
        while(t--);
}
void display(uchar bai,uchar shi,uchar ge)
{
       
        if(bai!=0)
        {
        P0=0xfe;
        wei=1;
        wei=0;
    P0=table[bai];
    dua=1;
        dua=0;
        delay(2);
       
        }
       
        if(shi!=0)
        {
    P0=0xfd;
        wei=1;
        wei=0;
        P0=table[shi];
    dua=1;
        dua=0;
        delay(2);
}
        P0=0xfb;
        wei=1;
        wei=0;
    P0=table[ge];
    dua=1;
        dua=0;
        delay(2);
}
void main()
{
init();
while(1)
        {
                display(bai,shi,ge);       
        }
}
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0