我的账户
我国电子DIY

科技成就未来

亲爱的游客,欢迎!

已有账号,请

如没有注册?

  • 客服电话

    在线时刻:8:00-16:00

    客服电话

    000-000-0000

    电子邮件

    ndiyadmin@163.com
  • 手机版

    电子DIY手机版

    随时随地把握网站动态

  • 官方微信

    扫描二维码

    免费获取约请码

一种超绝的键盘扫描。最少的io拓展出最多的按键。绝对值

[仿制链接]
5002 10
liuwei 宣布于 2012-10-5 15:10:40 | 只看该作者 |阅览形式 打印 上一主题 下一主题
堪称一绝的“IO 口扫键”法
堪称一绝的键盘扫描办法.pdf (139.8 KB, 下载次数: 14)
内容摘要,   

堪称一绝的“IO 口扫键”法
在做项目(工程)的时分,咱们常常要用到比较多的按键,并且IO 资源严重,
所以咱们就想方设法地在其他模块中节约IO 口,十分困难挤出一两个IO 口,却
发现依然不够用,真实没办法了就增加一个IC 来扫键。一个IC 尽管价格不高,
但关于大批量出产并且产品赢利低的厂家来说,这是一笔不菲的开支!
那,咱们能不能想到比较好的扫键办法:用最少的IO 口,扫最多的键?能够吗?
举个例:给出5 个IO 口,能扫多少键?有人说是2*3=6 个,如图一:
图一
对,大部分技能参考书都这么做,咱们也常常这样做:用3 个IO 口作行
扫描,2 个IO 作列检测(为便利描绘,咱们约好:设置某一IO 口输出为“0”――
称其为“扫某IO 口”)。用行线输出扫键码,列线检测是否有按键的查询办法
进行扫键。扫键流程:内行线顺次输出011,101,110 扫键值,行线每输出一个
扫键值,列线检测一次。当列线检测到有按键时,结合输出的扫键值能够判别相
应的按键。
可是,5 个IO 真的只能扫6 个键吗?有人说能够扫9 个,很聪明!运用行IO 与
地衍生3 个键(要留意上拉电阻),如图二:
图二
扫键流程:先检测3 个行IO 口,对K1’,K2’,K3’进行扫键,之后如上述2*3
扫键流程。5 个IO 口能扫9 个键,够凶猛吧,足足比6 个键多了1/2!
动动脑,还能不能再多扫几个?就几个?一个也行!好,再想一下,硬是被逼出
来了!如图三:
图三
不多不少,正好10 个键!这种扫键方法比较罕见吧!美丽!扫键流程:设IO1
输出为“0”,检测IO2…IO5,若判别有相应健按下,则可知有健;若无键,则
持续扫键:设IO2 输出为“0”,检测IO3,IO4,IO5,判别有无键按下,如此
类推。这儿应留意:当扫某一IO 口(输出为“0”)时,不要去检测现已扫过的
IO 口。如:此刻设置IO2 输出为“0”,顺次检测IO3,IO4,IO5,但不要去检测IO1,
不然会犯错(为什么,请考虑)。
感觉怎么样?不错吧!让咱们再看看图三,好有成就感!看着,看着……又看到
了什么?快!见图四:
保藏
保藏1
共享
共享
支撑
支撑0
对立
对立0

精彩谈论10

跳转到指定楼层
2#
sdlcwhg 宣布于 2012-10-6 08:37:23 | 只看该作者
谢谢共享的好材料,学习中。
3#
741342386 宣布于 2013-4-25 10:57:56 | 只看该作者
在做密码锁 正需求这个 谢谢楼主
4#
无悔 宣布于 2013-12-23 08:48:25 | 只看该作者
看了,很不错!
5#
鹿鸣 宣布于 2013-12-26 11:07:04 | 只看该作者
看看高手的著作!#^_^##^_^##^_^##^_^##^_^#
6#
凶暴自己人 宣布于 2018-5-6 20:57:47 | 只看该作者
很不错!这个 。便利有用。
7#
bhzjr 宣布于 2018-5-6 21:17:12 | 只看该作者
看了,很不错!很不错!
8#
shengwu11 宣布于 2018-6-8 10:28:00 | 只看该作者
谢谢楼主,学习学习。。。
9#
电子学徒工 宣布于 2019-3-25 12:11:46 | 只看该作者
这个今后还要多像楼主学习
10#
JOINZN 宣布于 2019-3-27 09:57:28 | 只看该作者
谢谢楼主,学习学习。。。
您需求登录后才能够回帖 登录 | 注册

本版积分规矩

重视咱们
我国电子DIY官方微信

客服电话:000-000-0000

客服邮箱:776513803@qq.com

周一至周五 9:00-18:00

公司地址:深圳市南山区美丽湾大厦B座

Powered by X3.4@ 2001-2013