目前我与 2 个不同的 USRP 合作。
其中一个是 USRP2,另一个是较新的设备是 X300。
该设备就 QPSK 和测试算法进行通信。
USRP2 的输出频移为 20 kHz,无法传输窄带信号。因此,我使用 X300 的参考时钟输出到 USRP2。
为此,我确实在 python 中使用了带有 GNU Radio 的命令
self.uhd_usrp_source.set_clock_source("external", uhd.ALL_MBOARDS)
此后,输出信号偏移消失,但X300没有接收到我的数据。
然后我增加了USRP2的200 MHz的主时钟:
self.uhd_usrp_source.set_clock_rate(200e6, uhd.ALL_MBOARDS)
在我看来,USRP2 不支持这种频率变化。我的问题是:
为什么将参考时钟设置为外部还不够?
为什么更改为外部后我没有收到数据?
为什么解决了更换主时钟的问题?