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

[复制链接]
7388|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校验
 楼主| refresher 发表于 2010-10-28 12:33 | 显示全部楼层
我是楼主,实际上是这样的。工业检测中检测器件,放在一个大的平台上(分隔放)。。有的地方有会放,有的后来被拿走,,要随时记录下哪些地方有器件,哪些地方没有。。我自己想,下面放一个光敏二极管,如果上面有东西盖住光了。那么就导通了(相当于按键按下)。。有好几百个(大概600-800,考虑20*40的方格)个这种位置。我放几百个光敏二极管就行了。。

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

谢谢。
程序匠人 发表于 2010-10-28 12:59 | 显示全部楼层
你还要考虑线上的衰减
coody 发表于 2010-10-28 13:04 | 显示全部楼层
用3片595+3片165,可以576个键
leang521 发表于 2010-10-28 13:12 | 显示全部楼层
不止576个键,应该是1152个键
leang521 发表于 2010-10-28 13:13 | 显示全部楼层

本帖子中包含更多资源

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

×
leang521 发表于 2010-10-28 13:23 | 显示全部楼层
不对,图有问题,才发现,你的东西是要很多键同时按下的,很成问题
这个电路不行,需要那种能检测多键同时按下的。
 楼主| refresher 发表于 2010-10-28 14:07 | 显示全部楼层
楼上,谢谢。。

是的。好像我不该拿键盘来比喻。因为大部分情况下,是有多个地方同时接通的。
ayb_ice 发表于 2010-10-28 14:11 | 显示全部楼层
用串入并出方式扩展个20*20键盘即可
李冬发 发表于 2010-10-28 14:29 | 显示全部楼层
你这种只能用最笨的那种1个键用1个IO的电路或带2极管的矩阵。其实,2极管的矩阵在你这没有优势。
不亦心 发表于 2010-10-28 15:07 | 显示全部楼层
可以参考cowboy的方法,4个io加上适当的二极管稳定检测65个按键
按此思路扩展。。。
idterminator 发表于 2010-10-28 15:40 | 显示全部楼层
模拟存储器的方式,对每个位置进行地址编码,然后遍历
yx331447791 发表于 2010-10-28 16:48 | 显示全部楼层
用595芯片级连起来,用三个IO也许就可以完成你说目标
Torda 发表于 2010-10-28 17:13 | 显示全部楼层
用个CPLD来扩展,或者2片单片机来扩展都可以。32个IO的单片机2个,最多可以做成32*32个按键
yulri 发表于 2010-10-28 17:41 | 显示全部楼层
标记了……
hn_yz_laojiang 发表于 2010-10-28 17:55 | 显示全部楼层
用cpld挺好的,很容易解决问题。
 楼主| refresher 发表于 2010-10-28 18:23 | 显示全部楼层
谢谢楼上各位。。

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

能否帮我画下连接图呀。 多谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

14

帖子

0

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