打印

单片机数码管显示

[复制链接]
1513|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
李源1991|  楼主 | 2013-5-22 21:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <reg52.h>
sbit duan=P2^6;
sbit wei=P2^7;
bit flag1,flag;
unsigned char code duanma[]={0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char code Weima[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
unsigned char temp[6];
void display()
{
        static        unsigned char i;
        duan=1;
        P0=0;
        duan=0;       
       
        wei=1;
        P0=Weima[i];
        wei=0;       
       
        duan=1;
        P0=temp[i];
        duan=0;       
       
        i++;
        if(i==6)
                i=0;
       
}
void init_time0()
{
        TMOD=0X01;
        TH0=(65536-2000)/256;
        TL0=(65536-2000)%256;
        EA=1;
        ET0=1;
        TR0=1;
}
void init_time() interrupt 1
{
        static unsigned int num;
        TH0=(65536-3000)/256;
        TL0=(65536-3000)%256;
        display();
        num++;
        if(num==200)
        {
                num=0;
                flag=1;
        }
}
void main()
{
        static unsigned char flag3=0;
        char shu;
        init_time0();
        shu=5;
        if(shu>=10)
                temp[0]=duanma[shu/10];
        else
                temp[0]=0;
                temp[1]=duanma[shu%10];
        while(1)
        {
                if(flag)
                {
                        flag=0;
                        shu--;
                        if(shu<=0)
                                flag3++;
                        if(flag3==1)
                                shu=5;
                        if(flag3==2)
                                shu=35;
                        if(flag3==3)
                                {
                                        shu=30;
                                        flag3=0;
                                }
                        if(shu>=10)
                        temp[0]=duanma[shu/10];
                        else
                        temp[0]=0;
                        temp[1]=duanma[shu%10];       
                }
                       
        }
}请问下为什么数码管计数会突然停止

相关帖子

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

本版积分规则

3

主题

4

帖子

0

粉丝