电容式触摸替代机械式按键

  作者:MeenakshiSundaram 时间:2012-05-22来源:电子产品世界

  一个4x4矩阵键盘的典型波型如下图所示  


图2 扫描线波形

  如图所示,任何时刻都有扫描线逐一下拉至GND接地端,其数量不会超过处于逻辑 ‘0’状态的扫描线。同时有多条扫描线处于逻辑 ‘0’状态,会减低检测出按钮按压的精确度。

  为了替代键盘,电容感应控制器必须扮演一个机械式键盘的角色,并让host认为它就是机械键盘 ,host的输出线(扫描线)必须变为输入,而host端的输入线(读取线)则会成为电容感应控制器的输出端。根据扫描线状态以及按钮触摸状态,系统须视情况由控制器来更新读取线。步骤如下所述。在一个12按钮(如图3所示)的产品中,按钮必须排成3x4矩阵,其中3是扫描线数量,4则是读取线数量。

  1. 开启扫描线上的中断。
  2. 把中断设置成边缘触发(在两端)。
  3. 为3条扫描线启动一个 ‘3’字节数组,由于我们需要4条读取线(每条分配1个位),因此选择BYTE(字节)。如果超过8条读取线,则应使用WORD。
  4. 对于任何使用电容感应算法的手指触摸系统,读取12个按钮,并利用相对应的数值来更新字节数组。注意:读取线应是active low状态,因为每当按压按钮时,扫描线上的 ‘0’就会传送至读取线,在默认状态下,读取线会上拉至Vcc。
  5. 所有扫描线中断都无需开启。只有当扫描线上报告有按钮按压事件时,中断才会开启,不然应处于关闭状态。这样的设计有助于在电容式触摸控制器中降低CPU的负荷。
  6. 在扫描线中断时,读取这些线并视状况更新读取线(参考下图)。  


3 键盘仿真
1 2 3

关键词: 电容式触摸 机械键盘

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版