你好!我们有一批板子,大部分产品上的cc1101可以和以前的产品(cc1101)正常通信,有部分产品收不到数据,设置gdo0为时钟测试,gdo0输出正确。cpu查询1101的状态也是正确的,不管是设置idle,还是rx,读到的状态都是正常的。使用万用表测试射频口差分信号的直流电压,也都在0.9V与1.0V之间。射频使用的天线都是弹簧天线,中间还换过天线,也都无法收到数据。gdo0设置为收到同步字即上报,使用示波器也抓不到上升沿。
这种问题一般可能由哪些原因引起?我应该从哪些地方可以入手进行分析?
Nutcracker:
听起来像是晶振频偏过大的问题。你可以测试一下单载波的频率偏差看看。
shaofeng wang:
回复 Nutcracker:
根据芯片手册,使用的晶振稳定度需要满足正负40ppm的要求。
目前发送单板使用正负1ppm的26M有源晶振,接收单板使用正负30ppm的26M有源晶振,现在读到频偏估计寄存器的值为3f(0x32 FREQOFF_EST)。
从上述的描述来看,晶振应该是满足要求的。
请问我们的应用是否正确?或者还有其他原因?谢谢!
Nutcracker:
回复 shaofeng wang:
你都用的TCXO 连接的 XOSC_Q1, XOSC_Q2 没有连? 用频谱仪看一下发送端的输出?
另外建议查查你GDO 的寄存器设置有没有问题。跟Datasheet 里面 Table 41 对一下。
shaofeng wang:
回复 Nutcracker:
1. XOSC_Q2端没有连接,悬空处理,这个是否存在问题?
2. 请问使用频谱仪测试射频链路的哪个点?但是目前发送端使用的同一个板子,但是接收端,部分产品不能收到,大部分产品接收都是正常的,这是否可以判断发送端应该是没有问题的?
3. GDO0,正常的产品设置是07,收到数据且CRC校验正确,在调试时,设置的是06,收到同步字,在这些无法收到数据的产品中,设置为06,用示波器也抓不到gdo0的上升脉冲。