TI中文支持网
TI专业的中文技术问题搜集分享网站

CC1101: 如何判断发送或接收已完成

Part Number:CC1101

433MHz,可变包长的发送与接收,目前能收能发,但有些问题。

相关设置如下:

IOCFG0设为0x06,即发送完毕会触发中断,收到包完毕也会触发中断。

遇到问题:

发送与接收确实会触发中断,如果是发送,中断触发后发现状态机的状态是TX,然后变为IDLE或TXFIFO_UNDERFLOW;如果是接收,中断出发后发现状态机状态是RX,然后变为IDLE或RXFIFO_OVERFLOW。

按照我的理解,接收完成状态应该是RX_END,发送完成应该是TX_END。

关于IOCFG0,也尝试过其它设置,但中断触发后,状态机的状态都类似。

想问的问题是:如何判断发送或接收已完成?

alex chen:

就问题的影响,发送还好点,只是状态机在中断触发后状态不对,但数据包能正确发送出去;接收还没找到很好的方法,中断出发后状态还是RX,直接读RXFIFO,有时数据不对,推测数据接收其实未完成,此时只能不停查询状态机状态,等到为IDLE,此时数据是正确的,但很容易造成看门狗超时,在查询状态期间,喂狗也不好使。当然,看门狗与CC1101本身没关系。

所以当前我的处理方法算walkaround,但没有从根本上解决问题。迫切需要找到如何判断已完成的方法。

,

Alice:

您好, 已经收到了您的案例,调查需要些时间,感谢您的耐心等待。

,

Daniel:

您好

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1059110/cc1101-receive-data-sometimes-good-sometimes-bad

请您参考这个帖子对于这个部分的相关处理。

赞(0)
未经允许不得转载:TI中文支持网 » CC1101: 如何判断发送或接收已完成
分享到: 更多 (0)