温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何提高单片机按键性能

发布时间:2021-09-15 09:23:43 来源:亿速云 阅读:171 作者:小新 栏目:编程语言

这篇文章主要为大家展示了“如何提高单片机按键性能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何提高单片机按键性能”这篇文章吧。

我们常见的按键扫描程序如下:

unsinged char KeyScan(void) {  unsigned char KeyValue=0;  if(KEY_IO != 0xFF) //检测到有按键按下  {  DelayNms(20); //延时 20 毫秒(严重影响单片机的运行效率)  if(KEY_IO != 0xFF)//确认按键按下  {   switch(KEY_IO)   {   case 0xFE: KeyValue=1;break;   case 0xFD: KeyValue=2;break;   default : KeyValue=0;break;   }  }  }  return KeyValue; }

在现实中,论坛上看到以下代码,我们不妨这样,没有用延时,运行效率大大提高!单片机实时性能显著提高!

//读取按键 uchar read_key() {   static int Key_on_off = 0 ;//按键自锁变量   uchar num , temp ;   num = P2 ;    num &= 0xf0 ; //将低四位清0   if(num != 0xf0)   {    if(Key_on_off == 0)   {    Key_on_off = 1 ;   switch(num)   {   //返回按键的编码   case 0xe0 : temp = 1 ; break ;    case 0xd0 : temp = 2 ; break ;    case 0xb0 : temp = 3 ; break ;    case 0x70 : temp = 4 ; break ;    }   }     }   else    Key_on_off = 0 ;  return temp ; }

以上是“如何提高单片机按键性能”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI