现在在写按键程序,一键多功能,实现正常显示界面,查询界面间的切换,进入查询界面后还要在10个界面间切换,我的思路是短键按下时进入查询界面,每按一次短键切换一个查询界面,长键按下时返回到正常显示界面,现在的问题是程序不能识别长短键,都按短键处理,下面是我的程序,大家帮我看一下对不对呀,有没有更好的长短键程序呀
uchar keyprocessor() //短键
{
uchar kn=0,knum;
for(knum=0;knum<100;knum++)
{
Delay_m(100);
if(key1==0)
kn++;
else
kn=kn;
}
if(kn==100)
return 1;
else
return 0;
}
uchar lt_key(void) //长键
{
int lkn=0;
int i;
for(i=0;i<1000;i++)
{
Delay_m(1000);
Delay_m(1000);
Delay_m(1000);
Delay_m(1000);
Delay_m(1000);
if(key1==0)
lkn++;
else
lkn=lkn;
}
if(lkn==1000)
return 1;
else
return 0;
} |