我这边用CC2500模块有一台机子开始是可以正常接收的,但一段时间后接收不到,我切换模式到发射,模块是能正常工作的,但就是接收不了,软件复位初始化也不行,一定要断电重上电才可以。RF接收当机后,我用一个正常的机子跟它一起有逻辑分析仪一起对比发现,当机后的RF能接收到数据,但数据是错的,字节数也对不上我切换模式都有重新初始化RF了,但没有用,还是只能发送不能接收,CC2500模块一定要断电再上电才可以。
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.
我这边用CC2500模块有一台机子开始是可以正常接收的,但一段时间后接收不到,我切换模式到发射,模块是能正常工作的,但就是接收不了,软件复位初始化也不行,一定要断电重上电才可以。RF接收当机后,我用一个正常的机子跟它一起有逻辑分析仪一起对比发现,当机后的RF能接收到数据,但数据是错的,字节数也对不上我切换模式都有重新初始化RF了,但没有用,还是只能发送不能接收,CC2500模块一定要断电再上电才可以。
1.麻烦您提供一下CCS版本和SDK版本(以及您使用的基线示例项目)。
2.有问题的设备是否可以进入调试模式?
软件复位初始化也不行,一定要断电重上电才可以。
3.是否可以验证程序挂起在代码中的任何地方?
Is it possible to check if the program is hanging anywhere in the code to confirm this case?
由于 CC2500 是收发器,因此主机设置非常重要,最好的情况是您尝试使用 TI 提供的软件进行复制(CC2500 数据表、产品信息和支持 | TI.com);
https://www.ti.com/product/CC2500#software-development
但我们仍然难以复制您的确切设置。 您可以尝试利用勘误表 (CC2500 勘误表注释 (Rev. E) (ti.com))。
https://www.ti.com/lit/er/swrz002e/swrz002e.pdf?ts=1702589799947
否则,如果您可以,请尝试在主机设置上启用调试来调试设备,因为我们的支持有限。
检查延迟的一种方法是使用 LED 或 GPIO 端口,您可以尝试在芯片复位之前将 LED(或 GPIO)设置为高电平,然后在复位后设置为低电平,并检查它们之间的增量(时间)以确认 具体延迟。 既然CC2500是一个收发器,那么它是由什么控制的呢?
从数据表来看,您可能需要等待 SO 再次变低,然后才能发出下一个命令