社区导航

 
快捷导航
  • 首页
  • 论坛
  • 查看新帖
  • 最新回复
  • 社区活动
  • 联系管理员
  • 消灭零回复
  • E金币兑换
  • 干货
搜索
查看: 15308|回复: 13

[讨论] 给大家分享一个STM32矩阵键盘扫描程序

[复制链接]

886

TA的帖子

4

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2015-1-12 17:18:31 | 显示全部楼层 |阅读模式
基本上矩阵键盘扫描都是这么写,关键在于掌握这个思想。先扫描行,再扫描列。可以直接用,加上软件滤波效果会更好。
u8 HL_Scan(void)
{
    u16 temp=0;
        u8 key=0;
        HL_Init_HScan();
        temp=GPIO_ReadInputData(GPIOD);
    temp&=0x000f; //得到低四位数据 检测4个2进制数中0的存在
        if(temp==0x0e)//第一行有按键被按下
        {
          key=1        ;
        }
        else if(temp==0x0d)
        {
          key=2;
        }
        else if(temp==0x0b)
        {
          key=3;
        }
        else if(temp==0x07)
        {
          key=4;
        }else key=0;

   HL_Init_LScan();
   temp=GPIO_ReadInputData(GPIOD);
   temp&=0x00f0;//得到高四位 即列数据
   if((temp==0xe0)&&(key!=0))//第一列被按下
   {
      key=(key-1)*4+1;
   }else
   if((temp==0xd0)&&(key!=0))
   {
      key=(key-1)*4+2;
   }else
   if((temp==0xb0)&&(key!=0))
   {
     key=(key-1)*4+3;
   }else
   if((temp==0x70)&&(key!=0))
   {
     key=(key-1)*4+4;
   }
   else key=0;

   return key;
}


此帖出自stm32/stm8论坛
YP20150112163853723.png
YP20150112163905454.png
YP20150112163942025.png
YP20150112165400828.png

按键处理.rar

7.15 MB, 下载次数: 18131

作为一个菜逼,干货并没有多少。唯一会的就是水,所以回帖水分大。望见谅!


回复

使用道具 举报

3040

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

发表于 2015-1-12 17:19:27 | 显示全部楼层
不错不错,这种薄膜键盘很方便的样子

点评

按着不如实体按键舒服。  详情 回复 发表于 2015-1-12 17:20
So what......


回复

使用道具 举报

886

TA的帖子

4

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

 楼主| 发表于 2015-1-12 17:20:20 | 显示全部楼层
ljj3166 发表于 2015-1-12 17:19
不错不错,这种薄膜键盘很方便的样子
    按着不如实体按键舒服。



作为一个菜逼,干货并没有多少。唯一会的就是水,所以回帖水分大。望见谅!


回复

使用道具 举报

217

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2015-1-12 18:08:50 | 显示全部楼层
还要把组合键,考虑进去,  还有更多功能 , 如: 短按, 长按, 双击, 组合等

点评

正在改进中,少不了还要请教。  详情 回复 发表于 2015-1-12 18:47


回复

使用道具 举报

886

TA的帖子

4

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

 楼主| 发表于 2015-1-12 18:47:40 | 显示全部楼层
foxpro2005 发表于 2015-1-12 18:08
还要把组合键,考虑进去,  还有更多功能 , 如: 短按, 长按, 双击, 组合等
正在改进中,少不了还要请教。



作为一个菜逼,干货并没有多少。唯一会的就是水,所以回帖水分大。望见谅!


回复

使用道具 举报

128

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2015-1-12 20:41:45 | 显示全部楼层
不错不错 ,收藏啦  !


回复

使用道具 举报

122

TA的帖子

2

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2015-1-13 13:21:23 | 显示全部楼层
感谢大神,我会尽快弄出我的毕业设计,顺利毕业,然后找个工作!和同行们一起努力实现电子世界!


回复

使用道具 举报

6

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2016-6-3 22:33:20 | 显示全部楼层
感谢楼主分享!


回复

使用道具 举报

5

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2017-3-22 15:30:32 | 显示全部楼层
感谢  生活有你分享更精彩


回复

使用道具 举报

278

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2017-3-31 23:08:13 | 显示全部楼层
开发环境?有没链接?


回复

使用道具 举报

59

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2017-7-25 17:37:19 | 显示全部楼层
谢谢分享,看下思路


回复

使用道具 举报

1

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2017-8-6 17:09:02 | 显示全部楼层
赞,谢谢分享


回复

使用道具 举报

1

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2017-9-5 16:25:45 来自手机 | 显示全部楼层
你的程序显示不对 从第二行就有问题


回复

使用道具 举报

1

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2017-10-13 00:29:49 | 显示全部楼层
挺好的,可以用,就是感觉不是很灵敏,有时候会卡一下


回复

使用道具 举报

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

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2017-12-18 03:40 , Processed in 0.471407 second(s), 18 queries , Redis On.

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