打印
[Kinetis]

读书笔记/学习心得+K60 TSI之矩阵触摸键盘设计感悟

[复制链接]
4874|38
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
天意无罪|  楼主 | 2013-10-25 12:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 天意无罪 于 2013-10-25 13:07 编辑

    中午下班吃了饭,没事做,于是拿上书又翻了起来,还是TSI。在看代码时,想到了矩阵触摸键盘设计。
    K60的TSI外设支持16通道触摸感应接口,如果应用设计使用到的触摸按键个数只有几个,可以采用单个IO挂载一个触摸按键的设计。但是,如果我们在设计中需要使用很多个触摸按键时,再使用上述方法就会占用太多MCU的IO资源,这是不合理的设计,特别是在MCU IO资源很少的时候(浪费可耻,节约光荣:lol)。

    在看书的时候,我第一反应是想到了我们平时设计机械按键的处理方式,当我们需要的按键个数较多时,都采用矩阵键盘设计。如常见的3*3、4*4,更多的情况下一般就使用专用IC了。那么K60的TSI是否可以这样做勒,为了验证这个想法,偶马上握着铅笔在纸上草花了一下3*3的矩阵,发现可以。下面贴上以3*3=9矩阵触摸键盘为例的图,也是在CAD中画好后,截屏复制下来的,显示效果可能不是好,对不住了啊!凑合着看吧。
     

                 图1
按键编号1-9对应的TSI响应通道可以用下表说明。


    从图一可以看出,我们只需要4个K60的TSI通道即可实现3*3=9个触摸按键的方法。而普通机械按键是需要3+3=6个IO通道。呵呵,TSI的触摸按键扩展还更力啊。于是我又想那4*4的矩阵触摸键盘应该占用多少个TSI通道勒,因此我又立马按照这个思路画4*4的图纸,等画好后,我发现出问题了,如下图所示。

             图2
    各位应该看出来问题所在了吧,按键1和6的响应通道一样,按键4和7的响应通道一样,按键10和13的响应通道一样,按键11和16的响应通道一样。这样设计,按键的编码不唯一。看来这种方法不行,只能用于3*3的矩阵设计。改了一下图,只能实现13个触摸按键编码。


  各按键号对应的响应通道








相关帖子

沙发
KuMo_2011| | 2013-10-25 16:09 | 只看该作者
不错,好想法,设计不错,Kinetis 有TSI果断开发起来啊

使用特权

评论回复
板凳
motodefy| | 2013-10-25 16:15 | 只看该作者
这个主意不错啊···不过没试过这个

使用特权

评论回复
地板
黄小俊| | 2013-10-25 18:01 | 只看该作者

使用特权

评论回复
5
123de7| | 2013-10-25 18:06 | 只看该作者
不收藏 ,对不起 LZ的好点子!!

使用特权

评论回复
6
KuMo_2011| | 2013-10-25 18:06 | 只看该作者
突然想起有这样一个建议——推荐覆铜形状为圆形或者方形,以减少电容特性。楼主想过没?

使用特权

评论回复
7
天意无罪|  楼主 | 2013-10-25 19:44 | 只看该作者
KuMo_2011 发表于 2013-10-25 18:06
突然想起有这样一个建议——推荐覆铜形状为圆形或者方形,以减少电容特性。楼主想过没? ...

嗯,那是必须的,实际画PCB肯定不是这样的。那个只是在CAD中画的示意图哈!

使用特权

评论回复
8
天意无罪|  楼主 | 2013-10-25 19:45 | 只看该作者
123de7 发表于 2013-10-25 18:06
不收藏 ,对不起 LZ的好点子!!

还有人收藏啊,泪奔啊!

使用特权

评论回复
9
天意无罪|  楼主 | 2013-10-25 19:51 | 只看该作者
motodefy 发表于 2013-10-25 16:15
这个主意不错啊···不过没试过这个

分析了哈TSI的原理和工作方式是没问题的,只是我在想那个“OK”键同时占用8个TSI通道响应事件,所以实际中触摸这个按键延时大不大,是不是很灵敏。有空了可以画个板子来看看!

使用特权

评论回复
10
KuMo_2011| | 2013-10-25 19:52 | 只看该作者
分享

K60(Rev6-Ch55-TSI)(中文).pdf

861.34 KB

使用特权

评论回复
11
天意无罪|  楼主 | 2013-10-25 20:01 | 只看该作者
KuMo_2011 发表于 2013-10-25 19:52
分享

貌似,好像你在我第一个笔记里分享过了吧!;P

使用特权

评论回复
12
KuMo_2011| | 2013-10-25 20:07 | 只看该作者
天意无罪 发表于 2013-10-25 20:01
貌似,好像你在我第一个笔记里分享过了吧!

哦,是吗,看到相关,我就不由自主的分享了,其实我还找了好多,https://bbs.21ic.com/icview-630912-1-1.html
可是貌似没人下,我觉得蛮好的啊,为什么呢?

使用特权

评论回复
13
天意无罪|  楼主 | 2013-10-25 20:16 | 只看该作者
其实资料不在于多少,大部分人一看到资料都喜欢狂下,我记得很多论坛,包括21很多一个帖子就放出了所谓的资料大合集,什么工程师必备手册啊....一大堆,但是有很多下下来是去看了得,曾经我也是这号人,但是后来发现资料收藏了一大堆,拿来看了的却寥寥无几。很多知识点都是我们需要的时候去发现,学习。一个完整的项目下来,可以学到很多知识,经验。然后做一个总结文档,这些才是你最宝贵的资料。

使用特权

评论回复
14
KuMo_2011| | 2013-10-26 21:04 | 只看该作者
学习就是这样,资料只有弄过来看过才知道有没有用,有些资料你看过后才知道没用,但不看过,就什么都不知道

使用特权

评论回复
15
KuMo_2011| | 2013-10-26 21:13 | 只看该作者
后来仔细看了一下,一开始以为和矩阵键盘一个道理,后来想想,触摸按键个机械按键是不同的,楼主能想到这个办法,人才啊。
不过我之前问了,你也答了,实际PCB不会是这样,那这个思路实际是否能实现呢,坐等楼主更新。

使用特权

评论回复
16
香水城主| | 2013-10-26 21:29 | 只看该作者
好思路,踩个脚印。

使用特权

评论回复
17
天意无罪|  楼主 | 2013-10-27 12:10 | 只看该作者
斑竹都不推荐一下啊!

使用特权

评论回复
18
KuMo_2011| | 2013-10-27 21:35 | 只看该作者
楼主如果用Kinetis做出实物,必火

使用特权

评论回复
19
天意无罪|  楼主 | 2013-10-27 22:33 | 只看该作者
KuMo_2011 发表于 2013-10-27 21:35
楼主如果用Kinetis做出实物,必火

我到是想做,可惜没时间啊!天天加班.....哎.....

使用特权

评论回复
20
FSL_TICS_Jeremy| | 2013-10-28 15:30 | 只看该作者
Good idea,欢迎其他网友提供更多的创意!!

使用特权

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

本版积分规则

61

主题

3242

帖子

12

粉丝