C8051F单片机的内部电容感应模块,电容触摸,触摸按键

2020-01-26 12:58发布

最近做一个项目,用C8051F单片机的电容感应模块CS0来做触摸按键的项目,刚开始做的时候,因为程序中是用固定阈值来判断是否有键被触摸,这个方式在高温和低温测试时,会出现误动作或者不动作的情况,后来修改成动态跟踪当前测得的电容值,即当前读到的电容转换数据与上一次读到的电容转换数据进行比较,如果当前读到的电容转换值超过上一次的电容转换值100以上,那么就认为有键被按了,否则就把当时的转换的电容值更新进保存上次的电容转换值的变量中(为了与下次转换值进行比较用)。这种做法目前 测试除了在营光灯的照射下有误动作外,高温、低温测试都能正常使用且没有任何误动作。但是当我把产品放到某种特殊材质的桌子上面,手去触摸按键区,产品没有任何响应。以上描述是把产品装成成品的测试情况。

拿出PCBA放在普通桌子上面测试,可以看到,手指与感应焊盘之间有2-3mm的距离,而把PCBA放在那张特殊材质的桌子上面以后,感应距离变得很短,几乎要用手摸到感应焊盘,PCBA板子才做出响应(这个问题有时候早上不会出现,到了下午就出现了)。
不知道有没有经历过这种问题的朋友们,希望各位专家、高手能给小弟提点宝贵意见
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
wjb444
1楼-- · 2020-01-26 15:54
补偿要缓慢,小步进补偿
哪桌子水份大,所以电容也大,相当于另外一个手在触摸
wjb444
2楼-- · 2020-01-26 18:37
wjb444 发表于 2013-9-20 14:00
补偿要缓慢,小步进补偿
哪桌子水份大,所以电容也大,相当于另外一个手在触摸 ...

在密度板桌子上比较容易发生这样的问题
Cheas_Tong
3楼-- · 2020-01-26 20:32
 精彩回答 2  元偷偷看……
cary.luo
4楼-- · 2020-01-27 00:18
需要加一些算法自动矫正受环境的影响。如果对抗干扰有较高要求的话,建议用专门的触摸IC实现更好。
Cheas_Tong
5楼-- · 2020-01-27 00:28
cary.luo 发表于 2013-9-24 17:52
需要加一些算法自动矫正受环境的影响。如果对抗干扰有较高要求的话,建议用专门的触摸IC实现更好。 ...

比如说什么样的算法呢。能说说原理吗
cary.luo
6楼-- · 2020-01-27 06:09
Cheas_Tong 发表于 2013-9-29 09:52
比如说什么样的算法呢。能说说原理吗

就是通过算法不断去校正环境变量。

一周热门 更多>