打印

如果有400多个键,如何设计扩展口来检测键盘按键事件?

[复制链接]
5244|39
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
refresher|  楼主 | 2010-10-28 10:19 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
资料中有很多键盘扩展方法,但都是键数不多。如果有400多个键,如何设计51单片机扩展口来检测键盘按键事件?


能帮画下电路示意吗? 或提示下方法。
硬件不熟悉。

非常感谢。

相关帖子

沙发
老鱼探戈| | 2010-10-28 10:24 | 只看该作者
串出并入

使用特权

评论回复
板凳
shell.albert| | 2010-10-28 11:01 | 只看该作者
400个键???不会吧,老大,怎么这么多啊、你得造飞船控制系统啊?!

使用特权

评论回复
地板
playpic| | 2010-10-28 12:03 | 只看该作者
另外用单片机做个按键板,通过串口通讯接到主机上,要CRC校验

使用特权

评论回复
5
refresher|  楼主 | 2010-10-28 12:33 | 只看该作者
我是楼主,实际上是这样的。工业检测中检测器件,放在一个大的平台上(分隔放)。。有的地方有会放,有的后来被拿走,,要随时记录下哪些地方有器件,哪些地方没有。。我自己想,下面放一个光敏二极管,如果上面有东西盖住光了。那么就导通了(相当于按键按下)。。有好几百个(大概600-800,考虑20*40的方格)个这种位置。我放几百个光敏二极管就行了。。

现在问题就是。如何按键盘输入那样,把这些光敏二极管的信号引人单片机呢? 太多了。

谢谢。

使用特权

评论回复
6
程序匠人| | 2010-10-28 12:59 | 只看该作者
你还要考虑线上的衰减

使用特权

评论回复
7
coody| | 2010-10-28 13:04 | 只看该作者
用3片595+3片165,可以576个键

使用特权

评论回复
8
leang521| | 2010-10-28 13:12 | 只看该作者
不止576个键,应该是1152个键

使用特权

评论回复
9
leang521| | 2010-10-28 13:13 | 只看该作者

使用特权

评论回复
10
leang521| | 2010-10-28 13:23 | 只看该作者
不对,图有问题,才发现,你的东西是要很多键同时按下的,很成问题
这个电路不行,需要那种能检测多键同时按下的。

使用特权

评论回复
11
refresher|  楼主 | 2010-10-28 14:07 | 只看该作者
楼上,谢谢。。

是的。好像我不该拿键盘来比喻。因为大部分情况下,是有多个地方同时接通的。

使用特权

评论回复
12
ayb_ice| | 2010-10-28 14:11 | 只看该作者
用串入并出方式扩展个20*20键盘即可

使用特权

评论回复
13
李冬发| | 2010-10-28 14:29 | 只看该作者
你这种只能用最笨的那种1个键用1个IO的电路或带2极管的矩阵。其实,2极管的矩阵在你这没有优势。

使用特权

评论回复
14
不亦心| | 2010-10-28 15:07 | 只看该作者
可以参考cowboy的方法,4个io加上适当的二极管稳定检测65个按键
按此思路扩展。。。

使用特权

评论回复
15
idterminator| | 2010-10-28 15:40 | 只看该作者
模拟存储器的方式,对每个位置进行地址编码,然后遍历

使用特权

评论回复
16
yx331447791| | 2010-10-28 16:48 | 只看该作者
用595芯片级连起来,用三个IO也许就可以完成你说目标

使用特权

评论回复
17
Torda| | 2010-10-28 17:13 | 只看该作者
用个CPLD来扩展,或者2片单片机来扩展都可以。32个IO的单片机2个,最多可以做成32*32个按键

使用特权

评论回复
18
yulri| | 2010-10-28 17:41 | 只看该作者
标记了……

使用特权

评论回复
19
hn_yz_laojiang| | 2010-10-28 17:55 | 只看该作者
用cpld挺好的,很容易解决问题。

使用特权

评论回复
20
refresher|  楼主 | 2010-10-28 18:23 | 只看该作者
谢谢楼上各位。。

还要CPLD 呀。那不成本一下上去了?

能否帮我画下连接图呀。 多谢。

使用特权

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

本版积分规则

0

主题

14

帖子

0

粉丝