proteuswilliam hill官网 |仿真william hill官网
直播中

杨宝顺

11年用户 177经验值
擅长:EDA/IC设计
私信 关注
[资料]

两位数码管按键计数


自己做了个简单的两位数码管按键计数;效果不太好,按键时十位数码管一闪一闪的,晃眼。应该是程序问题。发出来大家看看。下面是程序:
#include
#define uchar unsigned char
#define uint unsigned int
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共阴数码管0~9段码
***it K1=P1^6;
***it K2=P1^7;
void delayms(uint);
void key();
void display();
uchar num;
                                /********主函数**********/
void main()
{
        while(1)
        {
                key();
                display();
        }
}
                                /*******按键函数*******/
void key()
        {
                if(K2==0)
                {
                        delayms(10);
                        if(K2==0)
                        {
                                
                                if(num==0)
                                num=100;
                                 num--;
                                while(!K2);
                        }
                }
                if(K1==0)
                {
                        delayms(10);
                        if(K1==0)
                        {
                                num++;
                                if(num==100)
                                num=0;
                                while(!K1);
                        }
                }
               
        }
                        /******延时函数******/
void delayms(uint x)
        {
                uint i,j;
                for(i=x;i>0;i--)
                        for(j=110;j>0;j--);
        }
               /**********显示函数**********/
void display(uchar shi,uchar ge)
        {
                shi=num/10;
                ge=num%10;               

                P3=0xfe;
                P2=table[shi];        
                delayms(5);
               
                P3=0xfd;
                P2=table[ge];        
                delayms(5);        
        }



  • 实验威廉希尔官方网站

回帖(9)

杨宝顺

2013-11-26 16:52:28
hex文件,放这儿了
举报

杨宝顺

2013-11-26 16:58:26
额,没传上,重传一下。
举报

    anjian.chm (2013-11-26 16:56 上传)

    521 Bytes, 下载次数: 19

    请将后缀改为hex

174678

2013-11-27 18:24:37
看看 哦
!!!!!!!!!!!!!!!!!!
举报

dmdz2015

2016-8-3 11:36:39
谢谢分享。。。。。。。。。。。。。。。。
举报

tranhunga

2017-5-8 06:04:20

额,没传上,重传一下。
举报

刘嘉欣

2020-6-25 09:11:38
为什么显示屏不亮 ?
2 举报
  • 刘嘉欣: 用这上边的的代码生成的hex文件,和proteus联调后,显示屏不亮
  • 杨宝顺 回复 刘嘉欣: 是不是数码管用错了,用的是共阴数码管

resia666

2021-1-21 22:50:21
为什么闪烁找到原因了吗?同问
举报

jf_52691051

2021-5-7 16:53:36
用的您的文件 数码管不亮
举报
  • IMG_20210507_165305.jpg

scccx8106

2023-9-7 15:31:04
没代码不地道
举报

更多回帖

发帖
×
20
完善资料,
赚取积分