Lora SX1268使用

Lora SX1268使用

1.常用命令

1.1 lora模式指令:Lora/FSK

cmd:
SetPacketType(); //配置lora模式
GetPacketType(); //返回配置模式

1.2 lora模式下的参数配置:

当处于lora模式下时,有四个参数需要设置,用来实现对链路预算、抗干扰、编码占用率、和数据速度的配置。参数有带宽(BW_L)、扩频因子SF、编码率(CR)、低速率优化(LDRO)
cmd:
SetPacketType()

2.LORa帧格式

Lora SX1268使用
Lora 使用了两种包格式,显性和隐形显示。这显性包包含了包括编码率、crc在内的一个短的头部。

2.1前导码

前导码,用于同步接收端信号检测。接收端周期性的检查接收前导码,所以发送端的前导码应当配置成同一的长度。如果前导码长度不知道或者是变化的,那么这前导码的最大长度接收端应该配置。

2.2显性模式

显性下,前导码后是头部。包括
a:Payload 的长度(Byte单位)
b:编码率
c:针对Payload域的可选的16-bit CRC

2.3隐性模式

没有头部字段。在这种模式下表,头部的三个信息必须收发两端手动配置为一致。

2.4Payload

实际的数据域区。

3数据缓冲区

含有256字节RAM的收发区。用户可以配置接收和发送区的大小。
Lora SX1268使用

3.1数据接收

接收数据包的第一个字节的指针和包长可以通过接口GetRxbufferStatus()获得。
Lora SX1268使用

3.2数据发送

Lora SX1268使用

3.3其他

接收基地址和发送基地址均通过SetBufferBaseAddress(),默认下,两者的初始值均为地址0x00。
当进入Sleep模式后,数据缓存区数据清空。
数据的读写是使用接口WriteBuffer()和ReadBuffer()。
在每次读写之前,有必要初始化这相应的起始地址偏移。读或写数据缓存区,地址指针会自动增加。

注意:所有的接收数据都会放入数据缓冲区,包括CRC。如果接收的数据超过接收缓存区大小,会覆盖到发送缓存区。

.CAD(Channel Activity Detection)

lora信道活跃监测:该模式下用来监测哪些信道被占用。
借用数据手册上的话这么说的:随着扩频调制技术的应用,确定信道是否占用十分关键,需要确定是否有其他信号已经使用该信道,而该信号可能比接收机的噪声信号还要低,这种情况使用RSSI是行不通的,因此需要使用信道活动检测器(CAD)来检测其他LoRa信号
Lora SX1268使用