找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 413|回复: 2
打印 上一主题 下一主题
收起左侧

不一样的特殊按键处理方式

[复制链接]
跳转到指定楼层
楼主
这种按键检测方式,有哪位大咖有最优化的采集方法?

Key.jpg (88.56 KB, 下载次数: 0)

特殊的阵列按键

特殊的阵列按键
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 顶1 踩
回复

使用道具 举报

沙发
ID:161164 发表于 2024-12-5 17:41 | 只看该作者
  1. u8 KeyVal = 0;//用完清零
  2. void KeyScan()//1ms,定时运行
  3. {
  4.         static u8 Delay_XD = 0;
  5.         u8 KeyTemp = 0;
  6.         Key_S1 = 1;
  7.         Key_S2 = 1;
  8.         Key_S3 = 1;
  9.         if(Key_S2==0)KeyTemp=1;
  10.         if(Key_S3==0)KeyTemp=3;
  11.         if(KeyTemp==0)
  12.         {
  13.                 Key_S1 = 0;
  14.                 if(Key_S2==0)KeyTemp=2;               
  15.         }
  16.         if(KeyTemp==0)
  17.         {
  18.                 Key_S2 = 0;
  19.                 if(Key_S3==0)KeyTemp=4;               
  20.         }       
  21.         if(KeyTemp!=0)
  22.         {
  23.                 if(Delay_XD<0xFF)Delay_XD++;
  24.                 if(Delay_XD==20)//20ms消抖
  25.                 {
  26.                         KeyVal = KeyTemp;
  27.                 }
  28.         }else{
  29.                 Delay_XD = 0;
  30.         }
  31. }
复制代码
回复

使用道具 举报

板凳
ID:337139 发表于 2024-12-7 09:12 | 只看该作者

非常感谢!开拓了新思路。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表