Thread 中讨论的其他器件: ADS1292
工具/软件:
我当前使用的是 ADS1292R、因此遇到从器件接收到的所有数据均为零的问题。
有趣的是、发生此问题时、读取 ADS1292R 的寄存器仍会正确返回值、就像在初始化期间配置的值一样。 这表明 SPI 通信和寄存器设置看起来正常、但输出数据保持为零。
大约每20个下电上电周期发生一次此问题(不是精确测量)。 一旦器件进入此状态、它将继续输出零数据、直到电源完全循环或仅重新初始化 ADS1292R、同时保持主板通电。
我的 ADS1292R 初始化序列如下:
[我的初始化序列]
主板通电
ADS1292R RESET HIGH:1秒
ADS1292R RESET LOW:100 ms
ADS1292R RESET HIGH:100 ms
SPI 收发器虚拟10字节、具有零值
延迟10ms
SDATAC (连续停止读取数据模式)
延迟10ms
配置 ADS1292R
延迟10ms
验证配置(读取 ADS1292R 寄存器)-->始终正常
延迟10ms
RDATAC (启用连续读取数据模式。)
START 引脚处于高电平
作为一种临时权变措施、我实施了一项检查、如果接收到的数据的第一个半字节不是0xC、系统会自动重新初始化 ADS1292R。
如果能深入了解导致这种行为的根本原因、以及为防止这种行为而提供的任何推荐解决方案或设计注意事项、我将不胜感激。
提前感谢您的支持。