RF无线收发模块设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
无线收发模块的设计
一、设计方案
为了能实现数据通过无线方式进行传输的目的,采用hopeRF公司的无线单片收发IC RF12完成无线收发功能。为了能对RF12进行控制,采用ATMEL公司单片机AVRMEGA48对RF12进行控制,为了与PC机连接方便,采用了沁恒公司的USB转串口电路CH340与单片机相连。系统结构示意图如下:
二、电路设计
RF12电路设计
2.1.1 RF12功能简介
RF12是通用ISM频段的FSK发送接收集成单片电路,低功耗,多通道,可以工作在免许可的433,868和915MHz频段。RF12首发电路为需要外部很少器件的集成电路,具有低成本,柔韧性好的高度集成的解决方案。芯片集成所有射频要求功能,完整的模拟射频部分和数字基带收发部分,多频段PLL频率合成器,射频功率放大器PA,低噪声放大器LNA。正交(I/Q)下变频混频器,基带滤波器和基带放大器,和正交(I/Q)解调器。唯一需要的外部器件就是外部晶振和带同滤波器。
RF12具有一个全集成的PLL,便于射频设计,它的快速设定时间可以用于快速调频,对于多路径衰落信道可以获得强健的无线连接。PLL的高分辨率允许在任一频段进行多信道应用。接收部分的基带滤波带宽(BW)是可编程的,以可以包纳各种偏差,数据速率和晶振偏差的要求。接收部分应用了零中频方法,该方法采用了正交解调技术。同样在大多数应用中不需要外部器件(除了晶振和耦合电路)。
RF12通过集成的数字信号处理特性:数字滤波,时钟恢复,数字判决,集成的FIFO和发送数据寄存器(TX data register),显著的减小了微处理器的负担。自动频率控制特性允许使用低精度(低成本)晶振。
对于低功耗应用,RF12支持基于内部唤醒定时器的小占空比的周期工作模式。
功能模块框图
2.1.2RF12电路设计
在设计中采用RF12接收部分采用片内数字滤波器来提取接收数据流的位时钟方案,通过SPI接口设置工作参数,发送数据和接收数据。频带设计为433MHz,射频匹配滤波电路根据生产商提供的资料设计电路如下:
、RF112与单片机Mega48接口设计
Mega48单片机通过SPI接口与RF12相接,系统图如下:
由于SPI接口是单片机在线编程的下载口,同时又是与RF12的通信接口,为了在下载时不受RF12的影响,特在SPI接口与RF12接口之间通过电阻进行隔离。转传串口电路设计:
CH340集成电路可以完成USB转串口的功能,PC机的驱动程序有沁恒公司提供,在PC上的界面与串口通信界面相同,根据厂家提供的参考电路设计如下:
UART---USB
射频参数计算
、RF12的工作原理:
RF12为单片无线收发芯片,接收部分为采用正交解调的零中频技术,片上集成有基带低通滤波器,其带宽可程序控制,达到减低噪声系数的目的,同时还具有频率自动控制功能,以离散步进方式使得本振频率与发射机的载波频率差最小。对于RF12的应用需要根据接收信号的特性需要对基带滤波器的代换进行计算。、正交零中频解调原理及低通滤波器带宽的计算:
接收机结构如下图所示:
设射频输入信号为:s(t)=Acos(ω0t+(-1)DΔωt);
本振信号为:L(t)=cos(ωL t+φ)
通过正交下变频器:
I(t)=s(t)×L(t)=A{cos(ω0t+(-1)DΔωt-ωL t-φ)+ cos(ω0t+(-1)DΔωt+ωL t+φ)}/2
Q(t)=s(t)×sin(ωL t+φ)
=A{sin(ω0t+(-1)DΔωt-ωL t-φ)+ sin(ω0t+(-1)DΔωt+ωL t+φ)}/2
通过低通滤波器有:
Ib(t)=Acos(ω0t+(-1)DΔωt-ωL t-φ)/2
Qb (t)=Asin(ω0t+(-1)DΔωt-ωL t-φ)/2
当ω0=ωL,φ=0时有:
Ib(t)=Acos((-1)DΔωt)/2
Qb (t)=(-1)D Asin(Δωt)/2
当D=0时Ib和Qb构成正方向旋转向量,标识为频偏大于零;判读为0或1
当D=1 时Ib和Qb构成反方向旋转向量,标识为频偏小于零;判读为1或0.
在这里对于码元宽度为T,频偏为Δω,那么低通滤波器的带宽不应小于:
Δω+2∏/T
当考虑到本振与信号载波的偏差,滤波器的带宽应包含:频偏,数据速率和频率误差。
RF12的命令
RF12的命令通过SPI口发送,共有15条命令:
对于部分命令说明如下: 频率设置命令
12位参数F 取值在96到3903之间,当送入的F 值在范围之外,以前的F 数据任然被保留。频率合成器的中心频率f0可以计算如下: f0 = 10 * C1 * (C2 + F/4000) [MHz] 常数C1和C2由所选择频段确定:
数据速率命令
在发射模式中发送数据的实际位速率和接收模式中接收数据期望的位速率通过7位参数R(bits r6 to r0)和cs 位确定。
BR = 10000 / 29 / (R+1) / (1+cs*7) [kbps] 在接收部分根据下面的函数设置R 参数:
R= (10000 / 29 / (1+cs*7) / BR) – 1, 这里BR 是期望的位速率kbps 。 除了设定客户数值外,标准位速率可以很小的误差设定从600bps 到 数据数率精度要求:
在慢模式恢复时钟:ΔBR/BR < 1/(29*Nbit)
在快模式恢复时钟:ΔBR/BR < 3/(29*N bit )
BR 是在接收机设置的位速率,ΔBR 是发射机与接收机之间的数率偏差。Nbit 是在数据流中最大的连续1或0的个数。建议在长数据包中要包含足够多的1/0或0/1的变换,并在接收机和发射机中小心应用相同的分频比。 发送设置命令:
位
8-4 (mp, m3 to m0):FSK 调制参数为:
导致输出的频率为: fout = f 0+ (-1)SIGN * (M + 1) * (15 kHz) 这里: