工具/软件:
我在上电复位(POR)后遇到间歇性问题、在某些下电上电的初始化过程中、RDATAC 操作码不生效或 RREG 返回全零值。 但是、即使发生此问题、在运行时读取寄存器也会确认 WREG 操作始终成功。
以下是我的初始化序列:
主板通电
void init_ads1292r (void)
{
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 引脚处于高电平
}
发生此问题时、init_ads1292r()
在运行时再次运行可以解决此问题。
此外,虽然还没有100%确定,我的实验表明,问题确实 不会 如果不执行 SPI 通信(例如虚拟数据传输)、则会发生 解决方案 SDATAC
在 POR 初始化序列期间使用命令。
SDATAC
POR 之后是否不允许传输任何 SPI 数据?
如果不是原因、我还应该考虑其他哪些可能的根本原因?
提前感谢您。
此致、
年轻