工具/软件:
您好 TI 支持团队:
我们使用原型中心的 AFE4490 分线 PCB 作为 PPG、心率和 μ SpO₂ 测量的模拟前端。 主机是一个 nRF52840 开发套件。 我们从 AFE44x0 GitHub 存储库 (https://github.com/Protocentral/protocentral-afe4490-arduino.git) 的参考 C++固件开始、然后将其移植到普通 C 以适应我们现有的代码库。 下面共享了源代码。
问题描述:
•心率读数波动很大、并会出现突然的尖峰、例如在一秒内从~80BPM 跳至~115BPM、然后降级。
•SpO₂ 读数同样不稳定、在~98%和低至~22%之间振荡、而手指位置或环境条件没有任何变化。
硬件和固件详细信息:
•根据参考原理图进行 AFE4490 分接 PCB(原型中心)接线;3.3V 电源、4MHz 时钟。
•nRF52840 DK 在 64MHz 下运行;SPI 配置为模式 0、2MHz 时钟。
•将 TI 示例代码移植到 C 语言—control0、LED 电流、PGA 增益和 LED 时序的寄存器设置与 TI 的演示中相同。
•除了 PCB 板载元件外、无需进行外部模拟滤波。
到目前为止我们已经尝试过的技术:
- 已调整的 LED 驱动电流 (50%、75%、100%)-稳定性未提高。
- 添加了超过 4 次的软件均值计算—屏蔽尖峰但不阻止尖峰。
问题与请求:
- 是否有建议的寄存器设置(例如时序,稳定延迟,阈值寄存器)来提高 AFE4490 上的测量稳定性?
- 当移植到 C 时、基准代码中是否存在未处理的时序约束(例如 LED 相位时序与 ADC_RDY)?
- 有关调试策略的任何提示(例如测试模式,寄存器转储,PPG 波形等效性测试)、以确定这是硬件、固件还是信号处理问题?
SpO₂ 感谢有关调整 AFE4490 以获得一致的 PPG、心率和 μ C 读数的任何指导或建议。 如需了解更多详情(寄存器转储,示波器捕获,代码片段)、敬请告知。
谢谢您、
Savith、Octane 电路
