1 . 概要
-
LoRa
的芯片一般有 端部分:SX1276
/SX1276
/SX1278
。网关使用的是 SX1301 。EML3047
使用的是STM32L071
+SX1278
。
LoRa 芯片 |
频率范围 | 带宽范围 | 扩频因子 |
---|---|---|---|
SX1276 |
137 ~ 1020NHz | 7.8 ~ 500kHz | 6 ~ 12 |
SX1277 |
137 ~ 1020NHz | 7.8 ~ 500kHz | 6 ~ 9 |
SX1278 |
137 ~ 525NHz | 7.8 ~ 500kHz | 6 ~ 12 |
2. SX1278
为 Semtech公司推出的有新型LoRa扩频技术的RF芯片,具有功耗低、容量大、传输距离远、抗干扰能力强的优点。
2 . SX1278
2 .1 SX1278 的 工作方式
- 使用方法
sx1278
芯片引出了SPI
接口,用于对sx1278
的通信和控制。同时引出了6个GPIO口。MCU通过SPI和sx1278
芯片通信,对芯片进行初始化,配置通信参数,切换工作模式,收发数据。6个GPIO口在sx1278
芯片产生中断时,电平会从低电平变高电平,清除中断后,电平变回低电平。 LoRa分为LoRa模式和FSK/OOK 模式
睡眠模式:在此模式下,切换回LoRa模式,sx1278芯片初始化会进行这一动作。此模式会清空FIFO内的内容,并且,FIFO的内容也只会在这种模式下清除,其他模式下都是覆盖就内容。
- 待机模式:芯片通常运行在这个模式,射频和PLL被关闭,能耗很低。根据需要,切换到其他模式。另外,FIFO数据缓存只有在待机模式下才允许写入,发送时,需要在待机模式下,将数据写入到FIFO,再切换到TX模式发送。
- RX单一模式:在这种模式下,调制解调器在给定的时间窗口内搜索前导码。如果在该时间窗口(由
RegSymbTimeout
寄存器定义 ,10位长度的时间0~0x3FF)结束时还未找到前导码,表示等待接收超时,则芯片会产生RxTimeout中断信号并切换回待机模式 。运用此模式时,需要知道对方数据什么时候到达,否则,必须一直在待机模式和单一接收模式间切换,才能收到数据。 - RX连续接收模式:在连续接收模式下,调制解调器会持续扫描信道,以搜索前导码。每当检测到前导码时,调制解调器都会在收到数据包前对该前导码进行检测及跟踪,然后继续等待检测下一前导码。 在连续Rx模式下,当产生超时中断时,设备不会进入待机模式。这时,用户必须在设备继续等待有效前导码的同时直接清除中断信号。
- CAD模式:信道活动检测模式旨在以尽可能高的功耗效率检测无线信道上的LoRa前导码。在CAD模式下,SX1276/77/78快速扫描频段,以检测LoRa数据包前导码。 可用于定时扫描信道,降低能耗。