你好,
我在使用CY8C4127AZI-S455进行项目测试时遇到如下现象,请给说明一下原因,有没有什么风险,谢谢。
1、勾选Capsense组件的Enable self-test library,调用uint32 CapSense_GetSensorCapacitance(uint32 widgetId,uint32 sensorElement,CapSense_TST_MEASUREMENT_STATUS_ENUM * measurementStatusPtr)函数,用于测试某个sensor的电容值,此时我用示波器抓了一下Cmod脚信号,如下截图,Cmod由原来的比较稳定的2.74V变得不稳定了。
2、另外咨询一下,当使能补偿IDAC和调制IDAC后,Gain IDAC是默认2400nA/bit吗?修改Csd0IdacGainV2的值是不是不起作用了(37.5nA/bit,300nA/bit,2400nA/bit)?Capsense组件是V7.0版本;
谢谢。
Fayne
已解决! 转到解答。
- 标记:
- psoc4
1: CapSense_GetSensorCapacitance(6,0,&p) 这个函数是对sensor用下面的参数进行扫描的。
* The default meaurement parameter values are:
* * IGain = 1.2 uA
* * Res = 12 bits
* * Vref = 1.2 V
* * SnsClk = 375 kHz
2:你不要把getsensorcp和正常sensor扫描放到一起,我看你之前回复的截图,推断你是把sensor get cp和scan放到一起了。所以你看到Cmod有的时候是1.2v,有的时候是2.74v,我的理解是系统也不需要频繁的测sensor的电容,这个电容也没什么变化。
2: Enable IDAC auto-calibration 这个你已经使能了,所以你在expression里面修改的无效。选成auto ,也就是智能调节了。
1; 根据我的理解,你在问题1中的图不对,电压大于4.7v,应该是2.74v,不是存在风险风险的问题,而是 要找到你代码中是否存在函数使用不当的情况。
2;另外咨询一下,当使能补偿IDAC和调制IDAC后,Gain IDAC是默认2400nA/bit吗?修改Csd0IdacGainV2的值是不是不起作用了(37.5nA/bit,300nA/bit,2400nA/bit)?Capsense组件是V7.0版本;
你工程中是否使能智能调节,也就是smartsense模式?Csd0IdacGainV2 这个你测试结果怎么样?
1、代码如下,当调用这个CapSense_GetSensorCapacitance(6,0,&p)函数时,才会出现上边截图的那样,去掉后就是稳定的2.74V了,但是我需要用这个函数来获取按键的电容值,我这边工程里使能了下边的代码,按键也可以正常触发,也可以读取到电容值,只是Cmod的信号发生了变化,所以想问一下这是正常现象还是有问题的;
if(CapSense_NOT_BUSY == CapSense_IsBusy())
{
result[0]=CapSense_GetSensorCapacitance(6,0,&p);
}
2、工程里是Manual tuning,勾选了Enable IDAC auto-calibration和Enable cmpensation IDAC,Widget Detail里的Gain IDAC变成了灰色(Auto-calibrated),那么我在show Expression View中设置Csd0IdacGainV2的值是不是就不起作用了?这个时候Gain IDAC是默认2400nA/bit吗?还是别的值?谢谢。
Fayne
1: CapSense_GetSensorCapacitance(6,0,&p) 这个函数是对sensor用下面的参数进行扫描的。
* The default meaurement parameter values are:
* * IGain = 1.2 uA
* * Res = 12 bits
* * Vref = 1.2 V
* * SnsClk = 375 kHz
2:你不要把getsensorcp和正常sensor扫描放到一起,我看你之前回复的截图,推断你是把sensor get cp和scan放到一起了。所以你看到Cmod有的时候是1.2v,有的时候是2.74v,我的理解是系统也不需要频繁的测sensor的电容,这个电容也没什么变化。
2: Enable IDAC auto-calibration 这个你已经使能了,所以你在expression里面修改的无效。选成auto ,也就是智能调节了。
Hi Lingling,
谢谢您的解答。