C代码,在while(1)循环中希望外部按键每按一次,变量的值只增加1,如何实现
答案:1 悬赏:80
解决时间 2021-01-14 09:10
- 提问者网友:记得曾经
- 2021-01-13 21:49
C代码,在while(1)循环中希望外部按键每按一次,变量的值只增加1,如何实现
最佳答案
- 二级知识专家网友:北城痞子
- 2021-01-13 22:58
while中用getch()函数:
#include
int main()
{
int n=0;
while(1)
{
n++;
printf("%d
", n);
getch();
if(n>10)
break;
}
return 0;
}
追问:你没有理解我的意思,我是外部按键,按下时单片机的引脚被拉低,在while(1)循环中检测引脚是否为低电平来决定是否给变量加1,不是在windows上,是单片机。
追答:囧,DSP的啊,如果10ms是稳定的话,可以在while中sleep 10ms啊,用usleep(10000);
否则的话用一个变量lastStatus来保存上次的电平状态,
lastStatus=HIGH;
while(1)
{
if(lastStatus==HIGH && curStatus==LOW)
//增加1
lastStatus=curStastus;
}
#include
int main()
{
int n=0;
while(1)
{
n++;
printf("%d
", n);
getch();
if(n>10)
break;
}
return 0;
}
追问:你没有理解我的意思,我是外部按键,按下时单片机的引脚被拉低,在while(1)循环中检测引脚是否为低电平来决定是否给变量加1,不是在windows上,是单片机。
追答:囧,DSP的啊,如果10ms是稳定的话,可以在while中sleep 10ms啊,用usleep(10000);
否则的话用一个变量lastStatus来保存上次的电平状态,
lastStatus=HIGH;
while(1)
{
if(lastStatus==HIGH && curStatus==LOW)
//增加1
lastStatus=curStastus;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息