PSOC学习记录2

问:总共30个Touchpad,用了26个Touchpad,还有四个串接了电阻到MCU,4个不存在的Touch,一直会有信号值,频率是100台机,3-4台有问题。因为是矩阵键盘,所以硬件方面没法改为推挽输出,PN:cy8c4149AZS-S575
答:关于几个没有实际使用的sensor节点,目前没有API可以disable掉,但是可以使用下面的函数将所有数据清除,这个函数调用请放在数据处理函数Cy_CapSense_ProcessAllWidgets的后面

/*******************************************************************************
•	Function Name: Custom_CapSense_ClearSensorData
•	**************************************************************************//
•	Clear rawdata, signal and sensor status of dedicate sensor
•	\param widgetId
•	The widget ID, for which the pre-processing should be executed.
•	\param sensorId
•	The sensor ID, for which the pre-processing should be executed.
•	\param context
•	The pointer to the CAPSENSE™ context structure \ref cy_stc_capsense_context_t.
*******************************************************************************/

void Custom_CapSense_ClearSensorData(
uint32_t widgetId,
uint32_t sensorId,
const cy_stc_capsense_context_t * context)
{
    const cy_stc_capsense_widget_config_t * ptrWdCfg = &context->ptrWdConfig[widgetId];
    cy_stc_capsense_sensor_context_t * ptrSnsCxt = &ptrWdCfg->ptrSnsContext[sensorId];

    ptrSnsCxt->raw = 0u;
    ptrSnsCxt->diff = 0u;
    ptrSnsCxt->status = 0u;

}
在调用的时候,参考下面的位置调用。
/* Process all widgets */
Cy_CapSense_ProcessAllWidgets(&cy_capsense_context);
Custom_CapSense_ClearSensorData(CY_CAPSENSE_TOUCHPAD0_WDGT_ID, CY_CAPSENSE_TOUCHPAD0_RX0_TX0_ID, &cy_capsense_context);
Custom_CapSense_ClearSensorData(CY_CAPSENSE_TOUCHPAD0_WDGT_ID, CY_CAPSENSE_TOUCHPAD0_RX0_TX2_ID, &cy_capsense_context);

关于sensor的节点定义在cycfg_capsense.h里面
在这里插入图片描述

问:针对按压上电,信号量变小的问题
答:低基准线复位时间请添加图片描述请添加图片描述
请添加图片描述
针对于CapSense单通道,可以调用Cy_CapSense_CalibrateWidget_V3,进行更新baseline
在这里插入图片描述
针对双通道,可以用手动校准函数,更新baseline

针对贴了保护膜上电,会出现按压力变轻的问题

  1. 下面的设置重新配置capsense,然后再测试一下这个问题
  2. 取消红色方框内的配置在这里插入图片描述
  3. 适当设置下面框图内的参数
  4. 在这里插入图片描述
  5. 在这里插入图片描述
  6. 在这里插入图片描述
    7.在更改配置之前,使用tuning工具记录下当前每个sensor的rawdata数值,然后再更改配置后,通过调整Compensation CDAC value这个参数,把rawdata数据调整到与之前一直就可以

对于膜片形变量设计的硬性要求标准为多少?

不改硬件的基础上,软件上如何做优化,是否有相关参数配置,尝试仅以修改触控门槛无法解决,更大的力度也会达到触发值,滑条功能也无法实现
是的,在电容式触摸的应用中形变是一个非常巨大的影响因素,因为通过形状的改变,膜片会产生寄生电容的变化,并且这个变化通常是增加,由于手指正常触摸产生的电容变化量为1pF左右,但是形变导致电容的变化很可能远超这个数量,所以相对形变是电容式触摸应用中不可以接受的。
所以目前针对你们的问题,解决的方案一是增加表面盖板的强度,保证在一定压力下盖板不会发生形变,但是这个是有极限的。方案二是将膜片背面镂空,这样即使在受压发生形变的时候也可以保证膜片没有与其他发生相对形变产生寄生电容,膜片自身产生形变导致的电容变化可以在实测中测量出来,把手指信号与这个形变产生的信号对比,区分开就可以了。谢谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

PI_sunyang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值