新闻中心

EEPW首页 > 物联网与传感器 > 设计应用 > 电容触摸传感的理论框架

电容触摸传感的理论框架

——
作者:Thomas Perme 微芯科技公司 应用工程师时间:2009-07-20来源:电子产品世界收藏

对于百分比按下检测,将继续使用前面讨论的求均值方案。但是,读数变量将变换为如下形式:

本文引用地址:http://www.eepw.com.cn/article/96399.htm

unsigned long percent;

percent = average – (reading*16);
if (percent < 0) {
 percent = 0;   // 忽略电容上升

} else {
 percent = percent * 1000; // 乘以1000
 percent = percent / average; // 结果使用100.0%的形式
}
 
结果变量percent包含0至1,000的值,更具体地说,值的范围约为0至200(代表20.0%)。结果值保持单个小数位,因为更多小数位并不会提高精度。

更换先前的“if”语句,产生类似于以下语句的“if”语句:

 #define PCT_ON 50   // >5.0%,打开
 #define PCT_OFF 30  // <3.0%,关闭
 
 if (reading < PCT_ON) {
  Buttons.SENSOR0 = PRESSED;
 } else if (reading > PCT_OFF) {
  Buttons.SENSOR0 = UNPRESSED;
 }

下一个复杂解码方案称为“多键表决”。如前面所讨论,不仅会与手指和周围的地产生耦合,而且会相互耦合。因此,触摸一个会影响另一个,但影响程度通常会低于其他意外激励。如果即使影响程度较低,影响仍足以触发按下状态,会发生什么情况? 

开发多键表决系统可以帮助解决该问题,以及与小键盘污染关联的其他问题。多键表决系统会选择按下后受影响最大的按键,代价是多次按下动作只能产生单个按键响应。例如,如果触摸会影响两个按键,但手指按下的按键受到的影响最大,该算法将选择受影响最大的按键。

该算法必须获取来自所有可用传感器的数据。举例来说,假定使用了4个传感器。算法还是使用百分比按下检测方法,因为每个传感器的读数可能会稍有不同,采用相对与原始值的偏差可以起到一些帮助。系统必须扫描全部4个传感器,并在扫描之后执行以下步骤:

首先,扫描所有传感器
在每次扫描期间,记录每个传感器的受影响百分比
根据受影响程度进行排序
基于步骤3,对索引进行排序
位于数组单元0的传感器的受影响程度最高



评论


相关推荐

技术专区

关闭