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.

[参考译文] TIDA-01580:通过 BLE 设置 AFE4900的控制寄存器

Guru**** 2939240 points

Other Parts Discussed in Thread: TIDA-01580, AFE4900

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

https://e2e.ti.com/support/tools/simulation-hardware-system-design-tools-group/sim-hw-system-design/f/simulation-hardware-system-design-tools-forum/976313/tida-01580-setting-control-registers-for-the-afe4900-through-ble

器件型号:TIDA-01580
主题中讨论的其他器件: AFE4900

您好!

我有两个运行默认 TX 固件的 TIDA-01580设计工作版本、以及一个读取数据的外部 BLE 软件狗。 我正在测试这两个器件、目前主要关注 ECG 信号。 我看到我正在获得几个需要平均的并行信号(我假设这是基于寄存器1E 中的 NUMAV 设置)。

我的问题:这两个器 件似乎有两个不同的 NUMAV 设置、它们中没有一个与 AFE_default_reg.h 中的默认值相匹配(默认值设置为3、我看到其中一个器件为10、另一个器件为2)。 自从他们进行初始编程以来、我没有接触到他们的固件、但我使用了给定的评估软件和 Launchpad。
因此、我假设器件自动更改自身的设置(是否有自动校准或其他功能?)、或者有一种通过 BLE 更改设置的方法? 我只找到了三个可用特性(PDU、phy 和 toggle_throughput)。 我在这里错过了什么吗? 是否可以通过 BLE 读取/写入这些寄存器而无需重写固件?
谢谢!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    如您突出显示的那样、NUMAV 被设定为3。 固件中没有自动校准来修改 NUMAV 位。

    此外、无法通过 BLE 更改设置 、因为我们尚未实现反向路径(从 Launchpad 到 TIDA 板)。

    我建议 在 测试前后验证固件-是否由其他人修改?

    此致、

    Sanjay R. Pithadia

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

    您好、Sanjay、

    感谢您的快速回答。 那么、让我澄清一下、我对它的理解是正确的:如果 NUMAV 设置为3、那么我应该看到4个信号(NUMAV +1)、或者我应该看到8、因为还有 ECG_CHOP 标志?

    谢谢!

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

    您好 Nora、

     

    数据表以以下方式进行说明:

    当使用 PTT 模式时、NUMAV 寄存器控制将应用于第四阶段(ECG 信号采集阶段)。 当对 NUMAV 进行编程时(例如、如果 NUMAV = 3)、ADC 在每个阶段将输入转换四次、对四次转换求平均值、并将平均值存储在与该阶段对应的寄存器中。 当斩波模式被启用(ENABLE_ECG_CHOP = 1)时、ADC 执行两次转换、就像 NUMAV 被设定为1一样。

     

    我想您应该会看到具有斩波功能的8次转换。

    由于我没有使用斩波功能、我不确定这个答案。 在与 AFE4900的相关支持团队核实后、我将返回并获得答案。

     

    此致、

    Sanjay R. Pithadia

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

    您好 Nora、

    让我跳转并澄清有关 NUMAV 的问题。

    使用 PTT 模式时、下面的说明详细说明了如何将 NUMAV 寄存器控制应用于第四阶段(ECG 信号采集阶段)。

    • 禁用 CHOP 功能后、将根据 NUMAV 设置执行 ADC 平均计算。 在这种情况下、您需要根据 NUMAV 设置确保 CONV 宽度大于转换数。
    • 启用 CHOP 功能后、无论 NUMAV 设置如何、ADC 都会执行2次转换、就像 NUMAV 设置为1一样。 在这种情况下、您需要确保 CONV 宽度至少足以进行2次转换。

    基于 NUMAV 设置的转换数都在1 PRF 周期内发生、因此无论上述任何情况如何(假设 CONV 宽度设置正确)、每个 PRF 周期只能获得1个平均值。

    此外、AFE 不会自动更改 NUMAV 寄存器、除非主机将其编程为更改该值。

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

    您好!

    感谢您的说明。 但是、这会带来更多问题... 目前、我使用的是 TIDA-01580提供的默认固件、但我没有触摸 AFE 设置。 据我从您的解释中了解、平均值计算在器件内进行、我应该接收单个 ECG 信号。 相反、正如我之前说过的、我正在接收看起来像10个并行信号的样本。 如果我用10个块对它们求平均值、我将得到一个看起来像 ECG 的东西... 如果这个现象不是由 NUMAV 引起的、那么它是什么呢? 由于我使用的是默认器件和默认固件、这似乎不太可能、但这是否是一个错误? 此外、我想值得一提的是、我看到红色 PPG 和 IR PPG 的正确数据、但绿色 PPG 似乎一直处于饱和状态。 它应该运行自动校准。 对吧?

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

    您好!

    您能否分享 ECG 和绿色 PPG 信号的图片?

    您使用的是 LabVIEWTm2016开发引擎还是运行时引擎?

    此致、

    Sanjay R. Pithadia

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

    您好、Sanjay、

    在周末、我注意到了一些问题、因此我将对问题进行重新表述:

    使用 TIDA 演示软件时、我会在两个器件上看到 ECG 信号。 大多数情况下、演示软件显示绿色 PPG 为0、但它确实会像移动手指一样对变化做出反应、因此我假设传感器工作正常、它只是饱和。 此外、通过 UART、我会持续接收 到"0x1fff19"、这是用于饱和的数字。 对吧?

    2.当我插入笔记本电脑充电器时,它会使 ECG 记录在演示软件上发出很大的噪音,所以我假设存在电力线干扰。 如果 ECG 以500Hz 的频率采样、而电源以50Hz 的频率采样、那么电力线干扰可以解释为什么我认为我看到10个信号... 因此、NUMAV 问题得到了解决:)

    3.我已经开发了自己的基于 Python 的应用程序,我正在使用 BLE-UART 桥接器接收数据。 当我没有插入充电器时、ECG 信号看起来像是由两个不同的信号(下图中的黑线)组成。 它应该是这样吗? 每秒平均一次、我就会得到一个看起来非常好的东西。 是因为 CHOP_ECG 寄存器?

    我附上了一些图片来展示这种现象。

    非常感谢!

    TIDA 演示的屏幕截图:

     

    测量

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

    您好 Nora、

    关于绿色 PPG、我觉得传感器未正确连接(接头可能短路??)。 对于绿色 LED、似乎未在光电二极管上捕获数据。

    查看 TIDA GUI 屏幕截图上的 ECG、可以清楚地看到、使用 固件中的陷波滤波器可以消除线路干扰(50/60Hz)。

    对于 Python 中的屏幕截图、我认为您正在获取数据、但需要对振幅进行缩放以适应屏幕。 还需要大量滤波。

    只需强调一下:我们实施了以下滤波器:

    •ECG

    BPF–IIR 巴特沃斯一阶(0.3Hz 至90Hz)

    HPF–Bessel 一阶(0.1Hz)

    BSF–1阶椭圆(45Hz 至65Hz)

    •PPG

    具有511个抽头的 BPF - FIR (0.1Hz 至10Hz)

    •如果存在性能限制、则可以简化滤波器。

    此致、

    Sanjay R. Pithadia