C语言写单片机程序 如何让 *** 纵杆在某一个键一直按着的时候才能有用

C语言写单片机程序 如何让 *** 纵杆在某一个键一直按着的时候才能有用,第1张

提供困则思路,仅供参考

我觉得你这种情况,应该在程序里做一个自锁程序。流程如下:

1、声明一个按键状态变量key_status,并初始化为0

2、当按键按下并抬起时(此处应该做软件滤波),认为按键被触发,此时:

如果key_status==0, 就让key_status赋值为1   

如果key_status==1, 就让key_status赋值为0

3、 *** 纵杆作用七段数码管动作程序只有在key_status==1的时候执行,其他不动作

 while(1)

{

      ...

      

      if(key_status == 1)

      {

 孝巧         //执行 *** 纵杆作用七段数码管动作程汪慎棚序

      }

      

      ...

}

keyflag应该是判颂灶断某个按键按了几次,不安的时候为0

if(KeyFlag == 0)

{

}

按一次时执行

else if(KeyFlag == 1)

{

if(BUTTON_add == 0 &&KeyLock ==0)

{

}

if(BUTTON_reduce == 0 &&KeyLock ==0)

{

}

按二次时执行

else if(KeyFlag == 2){

if(BUTTON_add == 0 &&KeyLock ==0)

{

}

if(BUTTON_reduce == 0 &&KeyLock ==0)

{

}

一楼正解,主要按键扩展标志是用来节省资源野肢扮的,用最少的按键实饥凯现最多的功能!

if(keypress==true)检测有键按下 {delay_us(50) 延桐哗拍迟50us,软件滤波防抖动if(keypress==true) 检测有键被按下 key_value=P1提取键值芦拦 {switch(key_value) 识别是那个键被局羡按下了 case 0x01: XXX;breakcase 0x02:XXXBREAK进入对应工步或者动作即可。 ...... } } }


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存