This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] MSP430FR2672:使用 REFCAP 算法的 CapTIvate 设计-持续出现最大计数错误

Guru**** 1074580 points
Other Parts Discussed in Thread: MSP430FR2672, MSP430FR2633
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1285360/msp430fr2672-captivate-design-using-refcap-alogrithm---max-count-errors-constantly

器件型号:MSP430FR2672
主题中讨论的其他器件: MSP430FR2633

设计上的4元素滑块实现方式运行良好、但我发现位置输出不是线性的、我有做出跳跃的位置或在其他区域中不发生变化的位置、这在相对较长的区域内可见。

在之前的一篇文章中、Dennis Lehman 向一位同事介绍了"使用参考帽示例 Alogrithm 匹配电极敏感性"。

我已经实现了 alogrithm、但已经看到、在尝试为每个元素建立"增量"时、我总是会得到一个最大计数误差、并且我无法调整设计。  如何解决"Max Count Error"?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    为了便于理解、这是与我们分享参考电容器实施情况的相关帖子。  

    e2e.ti.com/.../msp430fr2672-linearization-of-touch-slider

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你可以记录结果并将其拉至该线程吗? 在我检查原始数据之后、我可以给您答案。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../elementDataLog_5F00_2023_5F00_10_5F00_27_5F00_10_5F00_10_5F00_22.csve2e.ti.com/.../sensorDataLog_5F00_2023_5F00_10_5F00_27_5F00_10_5F00_10_5F00_22.csv

    此处是通道数据和表的日志和屏幕截图。

    对于 RefCap 实现的修改、我有几个问题。

    修改 CAPT_MANAGer.c 文件时、我需要 在 CapTIvate 项目和 CCS 项目中进行修改吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    从结果中可以看到、它没有"Max Count Error"

    修改 CAPT_Manager.c 文件时,是否需要 在 CapTIvate 项目和 CCS 项目中同时修改?

    您只需在 CCS 中修改项目。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    要进一步扩展图像、这就是我看到的内容。  最大误差计数始终为红色、不清楚、当我将手指放在元素上时、我从未看到 Channnel 数据发生变化。

    如果我 从"REFCAP_CONFIGURATION"更改为"DEFAULT_CONFIGURATION"、CapTIvate 工具会正常响应、我可以看到通道数据发生的更改。

    我该如何前进?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    从 Dennis 下载代码时、您会遇到示例问题吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我无法从 Dennis 加载代码。  我的项目使用 MSP430FR2672、Dennis 项目使用 MSP430FR2633。  该 zip 文件也不包含 CapTIvate 设计中心文件、因此我不知道 Dennis 的项目是如何配置的。

    您能否提供将工程导入到硬件配置的信息和指南?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尝试一下代码、它在 FR2633上运行良好。 建议将您一侧的计数器设置从8000降低到200、以查看这是否有帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    伊森, 我假设通过"将你一侧的计数器设置从8000减少到200 "你指的是"转换计数"。  

    我有转换计数设置为650不8000 ,但根据指示:

    当我将 Conversion Count 更改为200时、仍获得相同的结果、Max Count Error 和通道数据仍为8000。

    我们能否安排时间来执行缩放交互式调试会话?  每天尝试1个调试操作非常耗时。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    对不起、我认为您需要:

    1.首先更改此处的转换计数。

    2.生成一个新的代码并使用 userconfig 文件来重新排列项目中的代码(下载到 MCU 中)。

    3.重新制作 MCU。

    如果它不起作用、我建议您将您的项目发送给我、我可以为您进行检查。 如果您需要离线支持、请联系 TI 销售人员。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我已经尝试过此方法、得到相同的结果。  附件是我的压缩 CapTIvate 和 CCS projects.e2e.ti.com/.../Carnegie_5F00_OpenAir_5F00_DPP1.zipe2e.ti.com/.../Carnegie_5F00_OpenAir_5F00_DPP1_5F00_captivate.zip

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    根据我的尝试、在进行此更改后、它可以对 FR2672有效。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我尝试过这些更改、但仍然不起作用。  结果不同、但无法正常工作。

    可以在 CapTIvate GUI 中的何处进行这些更改?  我知道  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我尝试过这些更改、但仍然不起作用。  结果不同、但无法正常工作。

    可以在 CapTIvate GUI 中的何处进行这些更改?  我知道  

     可以在"MCU 抗噪"选项卡中

    但我没有发现任何其他影响筛选条件的  

    我不会上班到星期二,但会回答。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../1425.Carnegie_5F00_OpenAir_5F00_DPP1.zip

    请尝试此代码。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    伊森

    我尝试了这段代码、但得到了相同的结果。  

    你改变了什么? 我看不到代码的任何变化。

    乔恩

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我看到的唯一区别是基本库和 MSP430FR2xx_4xx 库是不同的。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尝试伊森建议和代码,我仍然得到相同的结果。

    我不明白为什么我在使用 REFCAP 配置时会以8000的速率获得通道数据。  当我使用默认配置时、通道数据是250或650、正如在 CapTIvate GUI 中设置的那样。

    当我将配置从 CAPREF 改回"默认"、并将转换计数设置为250时、我会得到以下4个元件的计数、差值和 LTA 值

     

    转换计数= 250

    配置=默认值

     

    E00

    E01

    E02

    E03

    计数

    228

    211

    219

    218

    增量

    18

    36

    26

    29

    LTA

    248

    248

    246

    248

     

    当我将配置更改为 CAPREF 时、(无其他更改)

     

    转换计数= 250

    配置= REFCAP

     

    E00

    E01

    E02

    E03

    计数

     

     

     

     

    增量

     

     

     

     

    LTA

    8191

    8191

    8191

    8191

     

    LTA 变为8191、最大计数错误已设置且无法清除、因此我无法获取 Δ 或计数数据。

     

    我不知道我是否做错了事情、但最好与 TI 应用工程师口头交流并对其进行调试。

     

    我还可以将硬件系统发送给 TI 工程师以验证我的结果。

    请告诉我如何推进工作。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    这真是一个坏消息。 第二个差异可能取决于传感器。

    1.如果需要离线支持、可以先连接 TI 销售部 他们会为您找到一位 TI 应用工程师。

    2、另一种方法是根据每个传感器的原始计数进行消音器位置计算。 然后你可以自己做调整,使最终输出成为线性的。

    伊森

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jon。

    此时我可能建议看一下 CapTIvate 技术指南软件章节中的备用滑块示例

    您可以复制/粘贴代码和回调函数、因此无需编写太多代码。  这无法修复每个元件上的传感器灵敏度差异、但可以尝试将增量测量标准化、使其更接近彼此。

    另外、观察您使用默认方法在250处收集的数据、增量与我通常希望获得良好 SNR 的值相比有点小。  我会尝试使用300或325进行转换计数。  您需要测量最小5%的电容变化、但如果可能的话、确实需要10%或更高、但您不能疯狂使用转换计数。  使用500或更高版本会引入对噪声和温度漂移等因素的灵敏度。

    要计算%变化、请执行以下操作: %CHANGE = (100 x (1/cnt - 1/LTA))%或简单地为10,000 x (1/cnt - 1/LTA)

    例如、使用此公式 E00将表示%-> 10,000 x (1/228 - 1/248)= 3.53%

    E01 = 10,000 x (1/221 - 1/248)= 4.9%

    E02 = 10,000 x (1/219-1/246)= 5.0%

    E03 = 10,000 x (1/218 - 1/248)= 5.54%