查看: 1536|回复: 0
打印 上一主题 下一主题

51独立键盘按键控制数码管显示

[复制链接]
跳转到指定楼层
沙发
发表于 2016-4-21 22:08:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
#define unit unsigned int             为啥按下P10键两三次或者四五次之后数码管显示数字才加1啊?而且此处delay函数去掉和不去掉显示现象为什么会没有区别呢??求大神指教
#define uchar unsigned char
sbit P21=P2^1;
sbit P10=P1^1;                        
uchar table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x02,0xf8,0x80,0x90};
void delay(unit x)
{
        unit i,j;
        for(i=0;i<x;i++)
        for(j=0;j<110;j++);
}
void main()
{
    int num=0;
        P21=0;
        while(1)
        {
           if(P10==0)
           {
            if(num<9)
                {
                 delay(10);
                 if(P10==0)
                 {
                   P0=table[num];
                   num++;
                 }
                 }

                }
          while(!P10);
        }
}







回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入中科因仑

本版积分规则

快速回复 返回顶部 返回列表