全面拆解和构建5G物联网-21:LoRa终端--射频芯片SX1261 SX1262的FSK调制解调器与配置

目录:

1. SX1261/2功能模块

2. 调制技术的基本原理

3. FSK调制技术的基本原理

4. SX1261/2的FSK调制器主要的性能参数

5. SX1261/2的FSK调制器主要寄存器设置


1. SX1261/2功能模块:

MCU与SX1261/2物理上通过两组接口进行通信:

(1)SPI总线

(2)GPIO中断等控制总线

SX1261/2内部通过两种方式给MCU提供服务

(1)寄存器,主要用于MCU控制和配置射频芯片SX1261/2,并且通过寄存器获取SX1261/2内部状态。

(2)Data buffer:用于MCU接收和发送数据净荷,data buffer中存放的是数据净荷,物理层帧的头信息在寄存器中。

功能模块:

(1)Data buffer:用于存放接收和发送数据的净荷。

(2)Protocol Engine:

在发送方向:会根据选择的调制解调器的类型,从data buffer读取数据净荷,与寄存器中的物理层的帧头配置,共同组装成物理层的帧结构,并添加CRC到物理帧的尾部,然后进行数据的白噪化(Whitening)处理,把二进制数据流送给选择的调制解调器。

在接收方向:会根据选择的调制解调器的类型,去表数据的白噪化处理(Whitening),然后识别物理层的帧结构,提取帧头信息和数据净荷信息,并进行CRC校验检查,最后把帧头信息存放到寄存器中,把数据净荷存放到Data buffer中。

白噪化处理(Whitening)实际是一种物理层的编码。

因此物理层的帧结构定义以及物理层的组帧和去帧s是Protocol Engine最重要的功能。

(3)FSK Modem和LoRa Modem调制解调器

在发送方向:调制解调器负责把物理层帧的二进制数据流,调制到高频的载波信号上,变成模拟的电信号。

在接收方向:调制解调器从高频的载波电信号上,把调制的二进制数据给卸载下来,变成二进制的数据流。

这是调制解调器的最重要的功能。


2. 调制技术的基本原理

调制:通信系统中发送端的原始电信号通常具有频率很低的频谱分量或数字信号,一般不适宜直接在无线信道中进行传输。因此,通常需要将原始信号变换成频带适合信道传输的高频信号,这一过程被称为调制。

解调: 正好相反,在接收端将收到的数字频带信号还原成数字基带信号。

在这里,

数字基带信号:就是Protocol Engine与FSK调制之间的经过白造化处理后的物理层帧的二进制数据流。

载波信号:433M或890M的正弦波信号。

数字频带信号:就是载波信号,叠加了数字基带信号之后的信号,这个叠加的过程就是调制,去叠加的过程就是解调。

调制和解调技术有多种,这里要探讨的就是SX1261/2支持的FSK调制技术。


3. FSK调制技术的基本原理

(1)FSK的基本概念

FSK(Frequency-shift keying)是信息传输中使用得较早的一种调制方式。

它的主要优点是: 实现起来较容易,抗噪声与抗衰减的性能较好。在中低速数据传输中得到了广泛的应用。

2-FSK(Frequency Shift Keying)为二进制数字频率调制(二进制频移键控),用载波的频率来传送数字信息,即用所传送的数字信息(0或1)控制载波的频率。

2-FSK信号便是符号“0”对应于载频 f1,而符号“1”对应于载频 f2(与 f1 不同的另一载频)的已调波形,而且 f1 与 f2 之间的改变是瞬间的。

传“0”信号时,发送频率为 f1 的载波;

传“1”信号时,发送频率为 f2的载波。

可见,FSK 是用不同频率的载波来传递数字消息的。

(2)2-FSK的示意图:

在上图,有两个频率的载波信号来标识二进制的数据

当传送的载波信号是f2频率时,表示传送的二进制数据是0.

当传送的载波信号是f1频率时,表示传送的二进制数据是1.

(3) GFSK

高斯频移键控GFSK - Gauss frequency Shift Keying ,是在调制之前通过一个高斯低通滤波器来限制信号的频谱宽度。GFSK 高斯频移键控调制是把输入数据经高斯低通滤波器预调制滤波后,再进行FSK调制的数字调制方式。

SX1261/2采用的GFSK。

子所以,先采用高斯低通滤波器来限制信号的频谱宽度,这是因为二进制是方波脉冲信号,内含了非常高的高频分量,不利于通过SX1261/2支持的载波频率进行传送。

所谓低通滤波器,就是允许低于某个频率门限的信号分量通过,抑制掉高于某个频率分量的所以高频分量的信号。

(4)2-FSK信号发送调制原理

上图中,用二进制数据控制开关的开合

在实际应用中,并不是直接用0和1的高电平控制载波f1和f2的开关,而是用代表0和1的基带信号,去控制载波f1和f2的开关。

在SX1261 1262中是高斯滤波后得到的基带信号,而不是直接方波信号。

上述开关信号切换的快慢,就反应了载波调制的比特率。

考虑到实际系统中0和1并非均匀变化,有可能连续的传送1或连续的传送0,因此f1和f2就需要一定的带宽,承载各自频率下所支持的数据波特率。

(5)2-FSK 信号接收解调原理

w1和w2滤波器: 过滤出f1和f2两个高频信号,

包络检波器:通过包络检波器,去掉高频信号,得到代表0和1的基带信号的波形。

抽样判决器:判决器通过基带信号的波形,判定是数字0还是1.

w1和w2滤波器: 过滤出f1和f2两个高频信号,

乘法器:通过相乘法,去掉高频信号w1或w2,得到代表0和1的基带信号的波形。

抽样判决器:判决器通过基带信号的波形,判定是数字0还是1.

注意:

这里的带宽滤波器的大小,取决与基带信号的带宽。

(6)二进制数据的bit率与载波带宽之间的关系

需要传送的比特率流越大,载波信号的带宽就越大。

这里涉及到深层次的问题:就是如何用模拟信号表示一个方波信号的比例流。即数字方波信号的基带表示!!

这就是傅里叶变换:

方波信号的比特率越高,为了恢复方波信号所生成的基带信号所需要的谐波分量就越多,就带宽越大。

这就是bit率与基带信号带宽之间的定性关系!!


4. SX1261/2常见的FSK的性能参数:

(1)FSK BER = 0.1%:  比特出错概率

(2)2-level FSK modulation without pre-filtering: 2 FSK调制

(3)BR(bit rate 比特率):The bit rate range is from 600 b/s up to 300 kb/s with a default value at 4.8 kb/s。

通信速率指的信息bit位在空中传输的速率,其单位是bps(bits per second ),其数值等于数字调制中的调制速率。

该参数也是客户应用中最关心的参数之一,因为其直接影响通信时间。

但从射频性能来看,速率的选择又会影响接收灵敏度的体现,故而会间接影响通信距离。

(4)FDA = ± 5 kHz: FrequencyDeviation(频率偏差)

在FSK信号调制中,信号‘0’和信号‘1’是用不同的频率来表征。

信号‘1’的频率与中心频率(或者中心频率与信号‘0’的频率)之间的差值即为FSK调制信号的Frequency Deviation(简称Fdev),其单位是Hz或KHz。

下图是FSK调制信号频谱图

图中MARK1是信号‘0’,

MARK2是信号‘1’,

MARK3是载波频率,

三个频率关系:Fdev=Fmark3-Fmark1 或 Fdev=Fmark2-Fmark3。

(5)BW_F = 20 kHz double-sided: 接收带宽。

是指承载在高频信号上的基带信号的带宽。其决定了允许进入接收电路的信号的带宽,此值需要根据以上两个参数取值来决定。在上图中,就是f1和f2信号的带宽。

接收带宽取值过大,则会引入过多噪声干扰信号影响灵敏度性能;

如果取值过小,则会无法接收频偏的射频信号,故需要做相应的权衡。

(6)性能参数的关系

调制的二进制比特率越大,所需要的载波的带宽就越大,同时代表0和1的F1和F2离中心频点的距离就越越远,编码F1和F2的频谱重叠,相互干扰。


5. SX1261/2 FSK参数设置

(1)SetPacketType(...):设置调制解调器的类型


(2)SetRfFrequency命令:设置载波频率

该公式的含义是:

FXTAL:静态震荡器的频率,在这里是32M = 32 * 10^6.

2^25是对静态震荡器32M进行分频的分频因子,相除以后得到的结果,表明每个二进制比特所代表的频率粒度,或者载波频率设置的步长。

RF_frefq:是期望的频率,比如433M或470M或其他数值。

RF_requency:期望的载波频率所对应的寄存器的值。


(3)设置调制解调器参数: SetModulationParams(...).

设置波特率

设置带宽

设置FDA

FSK上述三个参数的制约关系:


(4)设置FSK物理层帧的参数:SetPacketParams

发送的物理层帧的前导字节的长度:(每个字节的前导的模式为0x55,即0x0101 01010)

接收的物理帧的前导字节的长度:

同步字的长度:

同步至的模式:

节点的地址的控制开关:

节点地址是用来过滤的,因此该参数用于接受一侧的过滤,主要用于点对多点的通信模式,不能用于点对点通信。

在这种模式下,每个节点只能接收地址域与自己一致的数据包。

允许接受的广播地址:

设置数据包的长度类型:定长或变长,如果接收和发送方采用定长模式,则在数据包中就不包含长度信息,节省了数据量。

payload的长度:发送payload长度,以及接收的最大数据的payload的长度。

CRC类型

白噪声编解码使能:

猜你喜欢

转载自blog.csdn.net/HiWangWenBing/article/details/107883963
今日推荐