51单片机c语言设计,按键控制数码管,依次按下显示0到9循环?

51单片机c语言设计,按键控制数码管,依次按下显示0到9循环?,第1张

假设你的是共阳极数码管,P0接数码。按键接P2^0

#include<reg52.h>

typedef unsinged int uint

sbit key=P2^0

unsigned char tab[]={0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}

void denay(uint x)

{

uint i,j

for(i=xi>0i--)

for(j=110j>0j--)

}

void main()

{

uchar a

while(1)

{

P0=tab[a]

if (key1==0)

{delay(10)

if(key==0)

{

while(!key1)

a++

if(a==10)a=0

}

}

}

char t

t=getchar()

if((t>='a'&&t<='z')||(t>='A'&&t宽禅<='Z')) printf("字稿老母键"键巧升)

else if(t>='0'&&t<='9') printf("数字键")

else printf("其他键")

//标点符号的ASCII码有点乱,你真的要的话就弄个table慢慢判断

1、读键程序:读P1。

内容对应+、-、TH/TL。

计次数识别TH/TL的长按和短按。

还需要考虑一个设定结束的考虑。

或者长时间无按键,视为设定完成。

2、显示程序:侍衫手建塌改议另一个定时中断中显示TH、TL的被设定值。

3、定时中断程序:通过IO指示老嫌灯翻转


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12310797.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存