请教2个IO口检测三个按键

[复制链接]
8225|19
 楼主| chest20090909 发表于 2013-10-20 22:26 | 显示全部楼层 |阅读模式
本帖最后由 chest20090909 于 2013-10-21 08:43 编辑

因端口限制,想用2个IO口检测3个按键,请问按下图的电路可以吗,s1,s2检测高电平有效,s3该如何检测呢

本帖子中包含更多资源

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

×
ballack_linux 发表于 2013-10-21 01:07 | 显示全部楼层
下图???没看到啊
呆板书生 发表于 2013-10-21 07:06 | 显示全部楼层
简单,
一个IO输出低,的时候,检测另一个的电平,
ayb_ice 发表于 2013-10-21 08:14 | 显示全部楼层
2^2=4,去掉一个00b
很忙 发表于 2013-10-21 08:30 | 显示全部楼层
看看图了,这个还是很简单的。做4个按键都没有问题。
ayb_ice 发表于 2013-10-21 09:09 | 显示全部楼层
这个图有检测顺序的
先S1,S2再S3
食肉狼 发表于 2013-10-21 09:11 | 显示全部楼层
啊,大神们,我只会两个
pang7 发表于 2013-10-21 10:15 | 显示全部楼层
不能双按键了
ayb_ice 发表于 2013-10-21 10:20 | 显示全部楼层
1: 将RC3,RC4置为输入,读取IO识别S1,S2,高则相应的按键按下,如果有按下则不识别S3

2: 如果S1,S2都没有按下,则RC3输出1,RC4继续输入,读取RC4识别S3

。。。
 楼主| chest20090909 发表于 2013-10-21 12:36 | 显示全部楼层
重新上传图了,按ayb_ice大侠的应该可以,在检测步骤上是不是先检测S1和S2然后再把RC3置输出来检测RC4的电平呢
chen125318 发表于 2013-10-21 17:53 | 显示全部楼层
一个io口输出低电平然后检测这个io扣是否被拉高,拉高了就是s3按下了
chen125318 发表于 2013-10-21 17:54 | 显示全部楼层
chen125318 发表于 2013-10-21 17:53
一个io口输出低电平然后检测这个io扣是否被拉高,拉高了就是s3按下了

看错了这样不行郁闷
pjy 发表于 2013-10-21 18:47 | 显示全部楼层
如果有空闲的ADC口的话,多少个键都没问题了,而且只需一根线
xiaoyigechaos 发表于 2013-10-21 19:38 | 显示全部楼层
2*2矩阵键盘
tooqng 发表于 2013-10-21 20:42 | 显示全部楼层
xiaoyigechaos 发表于 2013-10-21 19:38
2*2矩阵键盘

2*2用了4个IO口了吧,
nfreebird 发表于 2013-10-21 22:12 | 显示全部楼层
c:\test.bmp
00 key1
01  key2
10 key3
11 无按键
nfreebird 发表于 2013-10-21 22:14 | 显示全部楼层
本帖最后由 nfreebird 于 2013-10-21 22:16 编辑


本帖子中包含更多资源

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

×
nfreebird 发表于 2013-10-21 22:18 | 显示全部楼层
不会发图,捣鼓了半天
晟琦 发表于 2014-4-24 13:59 | 显示全部楼层
renwocai 发表于 2014-4-25 19:22 | 显示全部楼层
没必要搞成这样吧,两个端口分别对地接一个,两个端口之间接一个
您需要登录后才可以回帖 登录 | 注册

本版积分规则

121

主题

632

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部