CC1120的接收时读取CC112X_NUM_RXBYTES为错误。
时间:12-23
整理:3721RD
点击:
Ti工程师您好,
我正在使用cc1120遇到如下问题,希望能得到您的建议
我现在使用的stm8L+1120发送正常(能直接发给stdio连接的evb)使用的变长模式发送30个字节。但接收出现问题,问题为:每次产生接收中断后读取CC112X_NUM_RXBYTES字节为错误的。读取这个字节第一次55,如果直接按55读取fifo数据,模块将不再能够进入中断,如果忽略这个字节直接读出33(30+1len+1rssi+1lqi)个字节,则模块可以持续如此接收数据。另外数据检验均正确。代码如
图片所示。
估计大家没有遇到这个问题,我来结下帖子吧。每当发生中断的时候我先对出接收缓存的队头和队尾,分别是0,0x20刚好33个字节。继而我又发现一个奇怪的事情,如接着读CC112X_NUM_RXBYTES字节。这得到长度为0x21,刚刚好。所以在这种情况下先读一下队头或队尾再读CC112X_NUM_RXBYTES就能正确操作