有时,当发出 FRx 频闪灯时,CC1200将从 RX FIFO 错误状态过渡到空闲状态的时间超过10秒。
我只是在从 RX FIFO 错误转至空闲时才看到这种情况。 Rx 至空闲状态正常。
我是否应该查找可能导致此错误的特定条件集?
我刚刚开始进行故障排除,可以使用一些指导。
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.
您在这里是否引用 了 https://www.ti.com/lit/pdf/swru346中“表4:SPI 地址空间”所涵盖的寄存器地址 ? 如果是这种情况,为什么要读 sidle/SFRX?
此外,不建议使用投票寄存器,因为这可能会影响敏感度(如果在接收时完成投票)。 是否可以保留与示例中相同的整体代码?
为什么选择 FPGA? 我假设您已通过读回寄存器并检查/验证值来检查 SPI 接口是否工作。
是指表4中的寄存器地址。
阅读谈话/SFRX 以发布频闪灯。
接收时未执行此操作,这是到空闲的过渡,以重新配置 CC1200。 轮询将确定 CC1200状态何时已过渡。
这是一种工作设计,正在成功实施甚高频/超高频无线电接收器。 所有与 CC1200的 SPI 通信均已通过验证。
当 CC1200接收4FSK 固定长度数据包时,发现此调试偶尔出现故障。
您所指的是什么示例代码?
我不是直接阅读 MARCSTATE,而是在 SPI 交易期间查看状态。 在这种情况下,我正在读取寄存器0x02。
返回状态为 RX_FIFO 错误时,我发送 SFRX 并读取 reg 0x02,直到报告空闲状态。 有时,根据正在运行的持续时间计时器,此时间大于10秒。
我确实注意到我的状态机正在为所有频闪灯进行16位传输。 我纠正了这一问题以执行8位传输,它似乎已经解决了这个问题。
在 SFRX 导致问题后,似乎发送了额外的字节。
找到根本原因。
由于逻辑错误,我的 SPI 状态机在闪灯后未执行 REG 读取。 已修复此问题并正在正常工作。
感谢您的支持