永发信息网

51单片机用4个按键,每个按键被按下都会使数码管显示一个数值

答案:1  悬赏:80  手机版
解决时间 2021-12-02 02:38
51单片机用4个按键,每个按键被按下都会使数码管显示一个数值
最佳答案
图1 独立键盘原理图
程序实现功能:数码管前两位显示十进制数,00~59,开始为00。按下S1,数值+1,按下S2,数值-1,按下S3,清零,按下S4一次,自动+1,再按一次停止。
下面附上程序:
#include
#define uchar unsigned char
#define uint unsigned int

sbit k1=P3^0;
sbit k2=P3^1;
sbit k3=P3^2;
sbit k4=P3^3;
sbit du=P2^6;
sbit we=P2^7;
uchar counter,num;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71 };

uchar code list[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //数码管的段选

delay_ms(uint ms)
{
uint i;
uint j;
for(i=0;i {
for(j=0;j<200;j++);
for(j=0;j<102;j++);
}
}

void display(uchar i)
{
uchar shi,ge;
shi = i / 10; //取十位
ge = i % 10; //求余,取各位

P0 = 0xff;
we = 1;
P0 = list[0]; //点亮第一位数码管
we = 0;

du = 1;
P0 = table[shi];
du = 0;
delay_ms(1);

P0 = 0xff;
we = 1;
P0 = list[1];//点亮第二位数码管
we = 0;

du = 1;
P0 = table[ge];
du = 0;
delay_ms(1);
}
void init()
{
TMOD=0x10; //定时器1,工作模式1,16位模式定时器
TH1=(65535-45827)/256;
TL1=(65535-45827)%256; //定时50ms
//TR1=1; //启动定时器
}

void key()
{
if(k1==0)
{
delay_ms(10);
if(k1==0)
{
num++;
if(num==60)
num=0;
while(!k1); //等待按键释放
}
}
if(k2==0)
{
delay_ms(10);
if(k2==0)
{
if(num==0)
num=60;
num--;
while(!k2); //等待按键释放
}
}
if(k3==0)
{
delay_ms(10);
if(k3==0)
{
num=0;
while(!k3); //等待按键释放
}
}
if(k4==0)
{
delay_ms(10);
if(k4==0)
{
TMOD=0x10;
TH1=(65535-45827)/256;
TL1=(65535-45827)%256;
TR1=1;
while(1)
{ if(TF1==1)
{
TF1=0;
TH1=(65535-45827)/256;
TL1=(65535-45827)%256; //定时50ms
counter++;
}
if(counter==20)
{
counter=0;
num++;
}
if(num==60)
{
num=0;
}
display(num);
}
while(!k4); //等待按键释放
{
TR1=~TR1;
}
}
}
}

void main()
{
init();
while(1)
{
key();
display(num);
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
30年前惊世一跪30年后一座丰碑 这一惊人之举
如何在qt creator中设置环境变量
身体内有钢板能座飞机吗
三个又组成一字,形如焱一样,怎么读?求解,
保利·西塘越和固安华夏幸福孔雀城哪个好
中国五大名山分别在什么地方?
是take it up还是take up it?我见过有些动词
隼鹰和飞鹰号的舰载机种类零战多少舰爆多少舰
低价处理几只黑金刚五环新115潜孔钻头
ipad air 序列号1和I的问题
带有眷恋二字的微信昵称
这个怎么切换成触屏版?急!!!
求用【祝张小玲生日快乐】作一首藏头露尾诗
blue TEC是什么意思
猪肉煮熟了为什么橙红色
推荐资讯
荸荠水怎么熬
起亚智跑为什麼除了主驾驶门不能关,其他的都
养鸡场污水处理em菌微生物分解剂保证质量价格
五六千的游戏本有什么好的推荐?
如果命运能改变它还叫命运吗?
大王椰树一年能长多高
矩阵怎么证明(AB)^2
中云金领周边环境怎么样?生活便利吗?
某同学调查发现,鼠妇适于生活在20℃左右的阴
在python中如何求解函数在定义域内的最大值?
句子中带自负而轻视他人
有没有人感觉奥马尔(omar)好帅的
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?