单片机学习条记 8. 矩阵键盘按键检测

[复制链接]
发表于 2025-12-22 11:05:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
更多单片机学习条记:
单片机学习条记 1. 点亮一个LED灯
单片机学习条记 2. LED灯闪灼
单片机学习条记 3. LED灯流水灯
单片机学习条记 4. 蜂鸣器滴~滴~滴~
单片机学习条记 5. 数码管静态表现
单片机学习条记 6. 数码管动态表现
单片机学习条记 7. 独立键盘
<hr> 目次
0、实现的功能
1、Keil工程
1-1 矩阵键盘辨认方法
1-2 swich语句
2、代码实现

0、实现的功能

         4*4矩阵键盘+独立键盘的按键检测,可拓展为四管表现
​
1、Keil工程

1-1 矩阵键盘辨认方法

         告急采取列扫描(1111 0000)和行扫描(0000 1111)的方法。
         列扫描的初始利用是输入P3口为0xF0,当S6被按下时,P34由1会变为0,此时P3口为0xE0;同理,S10被按下时,P3也为0xE0。以是第一列被按下时,P3为1110 0000;第二列被按下时,P3为1101 0000;第三列被按下时,P3为1011 0000;第四列被按下时,P3为0111 0000。
以是P30--P33为行线,P34--P37为列线
         再做行扫描,P3初始为0x0F。当S6被按下时,P30会从1变为0,P3为0000 1110.末了再和列扫描的结果相加:1110 0000 + 0000 1110 = 1110 1110,得到确切的位置(第一列,第一行)
         以是P3的数据中,前四位为哪一列,后四位为哪一行。谁为0就是哪一行列
​
1-2 swich语句

         告急涉及到c语言中的switch语句
​
2、代码实现

         表现的按键序号和对应表现数字表如下:
​      
         只要是涉及到按键的,都要举行软件消抖+放手检测。赋值
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表