尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
矩阵键盘逻辑讲解
矩阵键盘逻辑讲解想象一个4行4列的网格网格16个交点每个交点放一个按键。横向的线叫行线4根纵向的线叫列线4根 按键就架在行线和列线交叉点按下按键 把这根行线和列线接通。只用 448根IO口就能做16个按键。如果用独立按键16个按键要16根IO省IO。核心思路一行一行挨个试逐行扫描行线、列线默认全部是高电平。一句话单独拉低一行看看哪根列线被拉低了就能找到是哪个按键先把所有行全部拉高只把第0行拉低剩下三行保持高。现在如果这一行上某个按键被按住 → 这根按键连通行和列 → 对应的那根列线就会跟着变低。四根列全是高代表这一行没有按键按下换下一行。如果发现某一列变低说明【当前这一行 这个列】交叉点的按键按下了。延时10ms消抖机械按键按下去瞬间会抖几下防止误判再确认一次电平。然后等着手松开再返回按键编号。处理完把这一行恢复高电平继续扫描下一行4行全部扫一遍算一轮。举个例子 第2行、第1列的按键按下程序拉低第2行读到第1列变成低电平 → 判断第2行第1列按键按下。和独立按键对比独立按键一根IO管一个按键直接读这根线高低就行。 矩阵键盘线共用不能直接读要“逐行测试”才能定位按键位置。消抖就是你刚才学的两种逻辑套在矩阵键盘上按键金属弹片按下瞬间会快速抖动电平忽高忽低单片机会误以为按了很多次。检测到电平变化 → 延时等10ms再判断延时消抖确认按键按下后可以while循环卡住等到松手之后再执行功能考试简单口诀拉一行读列线 列变低找到键 延时等去抖动 查行列算键号。简单理解多键冲突如果一次性把两行都拉低同时按两个不同行的按键程序分不清到底是哪一行就乱码。所以一次只能拉低一行。键号怎么算最简单键号 行号 × 每行按键数量 列号 4×4键盘每行4个键键号 行号×4 列号比如行1列21×426就是6号按键。
RELATED

相关推荐

java作业单元一

java作业单元一

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/10/26 18:08:56
Rapid SCADA v6 地图与三维绑定:坐标、对象身份、状态质量与资源版本

Rapid SCADA v6 地图与三维绑定:坐标、对象身份、状态质量与资源版本

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/10/26 18:08:56
GTweak 社区支持终极实操指南:Windows 优化反馈避坑与开发者联系全解析

GTweak 社区支持终极实操指南:Windows 优化反馈避坑与开发者联系全解析

GTweak 社区支持终极实操指南:Windows 优化反馈避坑与开发者联系全解析 【免费下载链接】GTweak Portable Tool for an Ideal Windows Setup 项目地址: https://gitcode.com/GitHub_Trending/gt/GTweak GTweak 是一款免安装的 Windows 系统优化工具&#xff…

📅 2026/10/26 18:08:56
MORE NEWS

更多资讯

📰

企业AI项目失败的七大常见原因:从需求定义到运维的全链路复盘

这几年我复盘过不少企业AI项目,有一个感受特别深:真正死在算法上的项目其实很少,绝大多数项目都是被需求、数据、组织、评估这些“看起来不技术”的环节拖死的。企业AI项目失败率高的说法流传了很久,但如果你去拆解每一个失败案例…

📰

YOLOv8数据集制作全流程:X-AnyLabeling标注与格式转换实战

做目标检测这行,绕不开的一个现实是:模型选得再新、训练脚本调得再顺,只要数据集这一环拉胯,后面全是白费功夫。YOLOv8 出来之后,训练门槛确实降了不少,一条命令就能跑起来,但真正卡住大多数人的…

📰

Linux运维必备:MBR引导损坏修复实战与避坑指南

1. 为什么MBR损坏是每个运维都躲不过的一道坎一台服务器毫无征兆地卡在开机自检之后,屏幕上只剩一行冷冰冰的提示,或者干脆光标闪烁、系统再也起不来——这种场景我遇到过不止一次。绝大多数情况下,问题并不出在硬盘物理损坏,而是…

📰

Claude Code:VS Code智能编程助手安装与配置指南

1. 为什么开发者需要Claude Code工具VS Code作为当前最流行的代码编辑器之一,其强大的扩展生态让开发者能够根据需求定制开发环境。Claude Code作为新兴的AI编程助手工具,通过深度集成VS Code可以带来三个维度的效率提升:智能代码补全&#x…

📰

同城外卖系统开发:架构设计与性能优化实战

1. 同城外卖系统开发概述同城外卖系统作为本地生活服务的重要载体,正在经历从简单信息匹配到智能化服务的转型。这类系统需要同时处理高并发订单、实时地理位置追踪、多角色协同等复杂业务场景。我们团队最近完成了一个日均订单量突破5万单的同城外卖平台开发&#…

📰

STM32实现SBUS协议解析与编码:遥控信号处理全攻略

简介:面向无人机、机器人及遥控设备开发者的STM32 SBUS协议实现代码包,聚焦Futaba S.BUS多通道遥控信号在STM32F407平台上的完整解析与编码。内容围绕250Kbps波特率下的25bit数据帧展开,涵盖UART与DMA配置、中断服务程序、18通道反码解码、通…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬