cancel
Showing results for 
Search instead for 
Did you mean: 

PSoC 4 MCU

huxu_3301281
New Contributor

CPSENSE 为什么不稳定,有时候没有任何触摸都会被触发,而且是一直触发,直到重启才可以正常。应该调整哪些参数?

而且有触摸的时候如果重启,则不会检测到触摸。盼复。

谢谢

0 Likes
1 Solution
RyanZhao
Moderator
Moderator

如果Rawcount没有跳变,Baseline是不会跳变变低的。

还是需要找到Baseline跳变的原因。

重新上电后Rawcount就是32xx,说明先是Rawcount在上电后被拉低到31XX一段时间,Baseline发生了LowBaselineReset.

建议排查一下,是否有电源噪声干扰,是否发生了任何结构方面的变化?

Thanks,

Ryan

View solution in original post

0 Likes
3 Replies
RyanZhao
Moderator
Moderator

触发不触发都是由算法根据模型加滤波得到的结果,算法主要对Rawcount进行操作,Rawcount基本公式(在AN85951里可以找到):

pastedImage_1.png

CapSense检测的电容,影响CapSense信号主要有三方面:

1. 电容变化

电容影响因素很多:

温度变化,电容变化;湿度变化,电容变化;结构变化,电容变化;不明物体靠近,电容也可能会变化。

2. 电路、空间噪声干扰。

主要是:其他同频或谐波数字信号干扰,电源干扰。

3. 代码问题。

这个就没法总结了,各种各样。具体情况具体分析。

需要调整的参数。。。还是得看是什么问题。

什么样的应用?供电类型和幅值?Tuner数据?

触摸同时复位后无法检测,可能因为手指放上去之后,CP的值已经超过了CapSense可以Calibration的范围,初始化失败。还是要看具体情况。是否打开了IDAC Auto-Calibration?是否测过无触摸和触摸时的电容值变化范围?

有Tuner观测的数据,才好分析。

Thanks,

Ryan

huxu_3301281
New Contributor

222222.png

如图所示,baseline会突然跳变到31xx,所以导致按键一直被触发。实际上应该32xx,如果重新上电会自动回归到32xx,但是不能够确定在什么情况下会跳变到31xx,应该怎么调整才能阻止baseline跳变呢?

盼复

0 Likes
RyanZhao
Moderator
Moderator

如果Rawcount没有跳变,Baseline是不会跳变变低的。

还是需要找到Baseline跳变的原因。

重新上电后Rawcount就是32xx,说明先是Rawcount在上电后被拉低到31XX一段时间,Baseline发生了LowBaselineReset.

建议排查一下,是否有电源噪声干扰,是否发生了任何结构方面的变化?

Thanks,

Ryan

View solution in original post

0 Likes