找回密码
 立即注册

QQ登录

只需一步,快速开始

帖子
查看: 1672|回复: 6
打印 上一主题 下一主题
收起左侧

为什么矩阵键盘按下按键后,会把相应单片机IO口电平拉低,原理是什么?

[复制链接]
跳转到指定楼层
楼主
ID:1049231 发表于 2022-10-26 12:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有个问题突然想到的,就是为什么矩阵键盘按下按键后,会把相应单片机IO口电平拉低,这其中的原理有大佬懂吗
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

举报

沙发
ID:883242 发表于 2022-10-26 14:47 | 只看该作者
矩阵键盘分行和列,一个输出一个输入,假设行输出,列输入,那么扫描到某一行,该行低电平其他行高电平,某列的按键被按下当然就是低电平了。
回复

举报

板凳
ID:1049231 发表于 2022-10-26 16:25 | 只看该作者
Hephaestus 发表于 2022-10-26 14:47
矩阵键盘分行和列,一个输出一个输入,假设行输出,列输入,那么扫描到某一行,该行低电平其他行高电平,某 ...

我的意思就是为什么按下去 按键一行就会变成低电平。
回复

举报

地板
ID:195496 发表于 2022-10-27 09:27 | 只看该作者
行列键盘原理你看一下,是置列0,读行,,先置行,读列也行,
回复

举报

5#
ID:161164 发表于 2022-10-27 09:39 | 只看该作者
坚持下去 发表于 2022-10-26 16:25
我的意思就是为什么按下去 按键一行就会变成低电平。

那就要了解一下传统51单片机的准双向IO结构
准双向IO置1时是弱上拉,只能输出很小的电流(150~270uA)
准双向IO置0时是开漏,能接受比较大的电流(6~20mA)
所以当IO(P10)置0,而IO(P14)置1时(P1 => 0xF0)
如果他们之间的按键被按下(短路)
P14就会被拉低(P1 => 0xE0)
回复

举报

6#
ID:195496 发表于 2022-10-27 09:50 | 只看该作者
按键的一行是用的一条单条机口线,当扫描到这时里,一定是有一列是置0,读行线,只要有一个键按下,那这个键所在的行线要变低,单片机读到是低
回复

举报

7#
ID:1049231 发表于 2022-10-27 11:31 | 只看该作者
lkc8210 发表于 2022-10-27 09:39
那就要了解一下传统51单片机的准双向IO结构
准双向IO置1时是弱上拉,只能输出很小的电流(150~270uA)
准 ...

谢谢 这下明白了
回复

举报

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

本版积分规则

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

Powered by 单片机教程网

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