打印

问个弱智的问题,按键扫描的。

[复制链接]
1375|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 zhaogongzuo 于 2010-5-25 19:53 编辑

AT89S52芯片

假设有个矩阵2*1的,P2.2和P2.1各接一个按键K2,K1,有上拉。

P2.2和P2.1作输出口,P2.3作输入口。

键盘扫描程序:P2.3 初始化 =0
让P2.2 = 1,P2.1 = 0;如果扫描到P2.3=1,则说明K2按下
让P2.2 = 0,P2.1 = 1;如果扫描到P2.3=1,则说明K1按下

让P2.2 = 1,P2.1 = 0;K2和K1同时按下,问扫描P2.3 = 高还是低电平?

请说说你的结果和理由,30号给分,只给一个人,20分,嘿嘿~~~

相关帖子

沙发
jerkoh| | 2010-5-25 20:32 | 只看该作者
本帖最后由 jerkoh 于 2010-5-25 20:35 编辑

P2.3 初始化 =0 后如果不是程序 再配置 P2.3=1

外部电压变高 变低是没用的 还是一直0

应该键盘扫描程序:P2.3 初始化 =1
让P2.2 = 1,P2.1 = 0;如果扫描到P2.3=0,则说明k1按下
让P2.2 = 0,P2.1 = 1;如果扫描到P2.3=0,则说明K2按下

让P2.2 = 1,P2.1 = 0;K2和K1同时按下,问扫描P2.3 = 高还是低电平? [是低 此时会发现P2.2也是低了 即双键按下了]

未命名.jpg (8.33 KB )

未命名.jpg

使用特权

评论回复
板凳
zhaogongzuo|  楼主 | 2010-5-26 13:25 | 只看该作者
P2.3 初始化 =0 后如果不是程序 再配置 P2.3=1

外部电压变高 变低是没用的 还是一直0

应该键盘扫描程序:P2.3 初始化 =1
让P2.2 = 1,P2.1 = 0;如果扫描到P2.3=0,则说明k1按下
让P2.2 = 0,P2.1 = 1;如果扫描到P2.3= ...
jerkoh 发表于 2010-5-25 20:32



我有点理解了,是跟端口的内部结构有关是吧?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

28

帖子

1

粉丝