如何精确计算SX1287的RF频率
LoRa频率
采用扩频通讯对频率要精确计算,有文献说对单片机要进行精确的设定频率。对我们来说,SX1278的频率在硬件方面不会任何改变的可能,只有在软件方面可以做出设定。在数据手册上提到的数据如下:
部件号 | 频率范围 | 扩频因子 | 带宽 |
---|---|---|---|
SX1276 | 137~1020MHz | 6-12 | 7.8~500kHz |
SX1277 | 137~1020MHz | 6-9 | 7.8~500kHz |
SX1278 | 137~525MHz | 6-12 | 7.8~500kHz |
现在我们来试验更改SX1278的频率来测试通讯结果。
频率试验
采用2个安信可的LoRa产品,作为发送和接收信息的调制解调器。采用2个STC15的单片机来试验通讯。主要是试验采用不同的频率信号通讯效果。
实验一:434 MHz
在常规情况下,采用下面的参数来设定频率:
unsigned char Frequency[3] = { 0x6c, 0x80, 0x00 }; //430Mhz 频率设置
这个频率用常规的数据来表示就是一个数
我们知道计算频率需要这个数据。按照公式计算是:
Fstep=Focsc/2^19
计算得到:Fstep = 32 000 000 Hz / 524 288 = 61.035 Hz
频率是Fstep这个数x Frf(23,0),即与上面的7,110,656相乘得到:
434 000 000 Hz, 即频率为434 MHz
在这个频率下,发送和接收几乎没有信息丢失的现象。要说一句关于前导码的问题。安信可公司提供的SEMTECH提供的例程中并没有找到可以改变前导码的地方。说明这个前导码是不能通过程序控制的,是SX1278芯片自行编程的,但前导码的长度是可以改变的,如何改变在手册中也没有详细的描述。
上面是接收的画面。下面是发送的调试画面
频率调整试验
通过对发射频率的改变,验证通讯能否正常。在频率为433.90MHz的情况下,通讯不正常,当频率为433.95MHz时,开始能够收到2个字节的Payload。这时发送的字节实际是16个字节。当频率为433.953525MHz时,可以收到16个字节。当频率为433.984375MHz,基本可以正常工作。
如果查看设置的参数,在设置中有带宽的设置,数据手册中说明的带宽设置为:
在程序中设置的带宽值为7,LoRa的设置为双边设置,即频率为434MHz的±62.5kHz可以接收。基本满足要求。
总结
通过试验,了解到SX1278模块的通讯主要是频率精确度。在设置时通讯双方的频率要一致,才能有效的通讯。
来源:CSDN
作者:caixf_001
链接:https://blog.csdn.net/weixin_44481398/article/details/86765296