So414 2021-07-12 18:53 采纳率: 0%
浏览 67

四位数码管接显示数据后,之后自动清零,最后一位又不显示

#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
sbit K1=P3^0;
sbit K2=P3^2;
void display();
uint count=0,flag,BJ=3,n,k;
uchar code wei[]={0x01,0x02,0x04,0x08};
uchar code duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar data a[]={0,0,0,0};
double u;
void delay(uint t)
{
    uint i,j;
    for(i=t;i>0;i--)
    for(j=110;j>0;j--);
}
void main()
{
    IE=0X83;
    TMOD=0X01;
    TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;
    while(1)
    {
    if(K1==0)
    {
        while(K1==0)
        {
            TR0=1;
            flag=0;           //正常
        }
    }
    }
}
void INIT()interrupt 0
{
    if(K2==0)
    {
        TR0=0;
        while(K2==0)
        {
            u=50*count/1000;
            count=0;
            if(u<BJ)
            {
                flag=0;
                display();
            }
            else if(u>BJ)
            {
                flag=1;
                display();
            }
        }
    }    
}
void TI0()interrupt 1
{
    count++;
    TR0=0;
    TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;
    TR0=1;
}
void display()
{
        n=(int)(u*100);
        a[0]=n/1000;
        a[1]=n/100%10;
        a[2]=n/10%10;
        a[3]=n%10;
    if(flag==0)
    {             
        for(k=0;k<4;k++)
        {
            P0=wei[k];
            P2=duan[a[k]];
            delay(2);
        }
    }
        else if(flag==1)    
        {         
            P1=0;
            for(k=0;k<4;k++)
            {
            P0=wei[k];
            P2=0xc8;
            }
        }    
}

img

  • 写回答

1条回答 默认 最新

  • 普通网友 2023-04-03 15:38
    关注

    P03口被设置成了高电平,想要找到原因,先看P03为什么最后成为了高电平。
    好吧看不出来程序有问题,贴主发现问题后,也给我解答解答?

    评论

报告相同问题?

问题事件

  • 创建了问题 7月12日

悬赏问题

  • ¥15 如何删除这个虚拟音频
  • ¥50 hyper默认的default switch
  • ¥15 网站打不开,提示502 Bad Gateway
  • ¥20 基于MATLAB的绝热压缩空气储能系统代码咨询
  • ¥15 R语言建立随机森林模型出现的问题
  • ¥20 unity内置语言切换的按钮设置
  • ¥15 中级微观经济学,生产可能性边界问题
  • ¥15 TCP传输时不同网卡传输用时差异过大
  • ¥15 请各位看看我写的属于什么算法,或者有更正确的写法?
  • ¥15 html5 qrcode 扫描器