基于STM8及USX1231的收发系统设计

分享到:

2008年中国政府为微功率(短距离)无线电应用增加了868MHz~ 868.6MHz的工作频率。其对无线电设备的射频要求如下:
(1)发射功率限值:5mW(e.r.p);
(2)发射信号的占空比限值:1%;
(3)载波频率容限:100×10-6;

并把该类设备归类于“各类民用设备的无线电控制装置中。

从上面的规定中可以看到,该频段可用带宽为600kHz,但并没有明确在该频道使用的带宽,数据速率以及调制方式方面要求,这就给予了应用很大的空间。本文主要是基于868MHz频段的要求,设计了比较简单通用的无线收发系统,该系统可适用于该频段的不同的无线传输应用。

SX1231介绍及性能描述
SX1231芯片是Semtech公司推出的一款高集成度、低功耗、多频段的UHF RF收发器。其工作电压为1.8V~3.6V,24引脚QFN封装,工作频率包括3155MHz、4335MHz、 8685MHz和915MHz无许可证的ISM频段;内部集成SIGMA-DELTA小数分频锁相环、功率放大器、唤醒定时器、数字调制解调器、66字节的发送和接收数据FIFO、数据包处理、数据加密功能AES,以及6个可配置的DIO等,所有主要的RF通信参数是可编程的,大多数可动态设定。采用16节的FIR通路滤波器,因而有好的选择性;发射功率可编程输出,从-18dBm到+17dBm;有多种调制解调方式:FSK、GFSK、MSK、GMSK和OOK等;SX1231在使用时所需的外部元件很少,1个32MHz的晶振、几个电容和电感就可组成一个高可靠性的收发系统,设计简单且成本低。SX1231在1.2kbps时的灵敏度高达-120dBm,主要用在无线抄表(AMR)、无线传感器网络、家庭和建筑物自动化、无线告警和安全系统、工业监视和控制等领域。

无线射频收发系统设计

系统总体方案

无线射频收发系统的结构框图如图1所示,由STM8L151K2单片机控制SX1231实现无线数据的收发。发送模块中的STM8L151K2将数据传送给SX1231,然后SX1231对数据进行包格式处理,包括增加前导码、同步字、CRC校验码,如果需要也可以对数据进行加密处理。最后数据包经天线发送给接收模块。接收模块对接收到的射频信号放大、解调、解包之后,再将数据送给主控制器STM8L151K2进行相应的处理,如送显示屏或PC数据处理中心等。该系统包括按键和液晶显示屏等人机交互界面,以及RS232接口,这实现了与PC的通信功能。

图1 系统方框图

系统硬件设计

主控芯片选用ST公司推出的单片机STM8L151K2。STM8L151K2有1K bytes的RAM和8K bytes的Flash以及256bytes的EEPROM,片上集成了包括串口、SPI、I2C、ADC、触摸屏控制功能等外围模块接口,完全满足本系统对微控制器的要求;有多种电源管理模式(如等待模式、低功耗运行模式、低功耗等待模式等)。

STM8L151K2可以通过SPI接口对SX1231的内部寄存器进行读写操作,灵活配置各项参数。通过4线SPI接口完成对SX1231的初始化配置、读写数据、访问FIFO等操作,使SX1231正常工作在发射、接收模式,完成数据在空中的传播。

SX1231是15脚~18脚的标准的SPI接口,DIO0~DIO5可以通过内部寄存器来配置成不同的中断信号。映射关系如表1所示,这样可以很方便地获取SX1231的工作状态。如果需要了解FIFO满、FIFO不是完全空,工作模式Ready,有效的数据包发送或接收、电池电压低、RSSI、PLL锁定等状态,都可以配置寄存器来把这些信号映射到DIO PIN,然后单片机STM8L151K2通过检测这些DIO PIN的电平来获得或者主动通知MCU某个状态发生。可用19脚(RXTX)控制射频收发开关以进行发射通路和接收通路的切换,高电平时为发射状态。图2中采用UPG2214TB射频开关,V1和V2分别为开关的控制脚。由于SX1231只有一个控制脚,因此增加一个三极管反相器就完成了开关的控制。21脚(RFIO)是发射和接收共用的PIN,但是该PIN的最高输出功率为13dBm。如果需要输出更高的功率(17dBm或20dBm),就必须把发射接至23脚(PABOOST),这时21脚(RFIO)只当作接收PIN。

图2 硬件设计原理图

SX1231接收端的输入阻抗可设置成50Ω和200Ω,通常设成200Ω,此时同一匹配值在全频段仍可获得很好的灵敏度。

SX123节省功耗方面有一些很重要的特性:

(1)工作电压范围宽:从1.8V~3.6V都可以正常工作,且任何特性都保持不变。特别是对于发射,工作电压低至1.8V时仍然保持相同的输出功率,即电压从1.8V~3.6V,输出功率都能到达17dBm或20dBm,不随电压而变。但是其他类似的芯片,输出功率则随着电压的下降而降低。这样一种特性,使得该系统能够使电池的利用最大化,延长电池的使用寿命,这对低功耗的应用来说具有非常重大的意义。

(2)可以在sleep/standby模式下读写寄存器:该特性节约了写FIFO时的功耗。在sleep模式下的电流为0.1μA,而在接收模式下的电流为16mA,节约了160000倍的功耗。

表1 DIO PIN 与信号的映射关系表

系统软件设计

系统中各主要功能模块均编成独立的函数由主程序调用。功能模块包括:初始化程序(包括初始化STM8L151K2、SX1231)、无线发送程序、无线接收程序等。无线发送程序负责写入数据载荷到SX1231,并根据通信协议来配置芯片的前导码、同步字及CRC校验码,最后SX1231把其组装成数据包将其发送出去;无线接收程序负责接收并处理数据。首先,SX1231接收到一个完整的数据包,之后逐步的把前导码、同步字以及CRC码去除,最后MCU从其FIFO中取出有效数据。

无线收发模块之间的通信是以数据包的形式发送的,本系统定义的数据包格式如表2所示。

表2 本文系统定义的数据包格式

其中,Preamble(前导码)是一连串的10101010(0XAA)或01010101(0X55),其数量为0~655635字节,具体几个字节可以根据应用的需要来设定。前导码主要用来进行帧同步,接收机主要依靠前导码来进行有用信号识别,完成频率控制,以及自动增益控制、信号强度判断等动作以确保用最佳的状态接收正确的数据。SyncWord(同步字)在前导码之后,通过设定好的同步字来作为同步模式的标志码,也可以作为一个网络的ID,相同网络的设备用相同的同步码。而接下来的地址码(Address)可以作为网络内每个设备的ID,如果数据包中的地址于本设备的地址相同,则接收数据,否则不予处理。有效载荷(Message)是真正需要传输的数据。最后是CRC校验码,由芯片自动完成。

初始化程序

初始化程序包括STM8L151K2的初始化以及SX1231的收发频率、工作模式、调制方式、数据速率以及数据包处理等寄存器的初始化配置。

系统上电后,STM8L151K2处于默认状态,根据系统功能需求重新进行初始化配置。SX1231也处于默认状态,需要进行配置才能工作。SX1231的初始化是一个重要的部分,正确的配置对系统最终的通信性能有很大的影响。

数据发送程序

无线发送程序流程如图3所示。完成STM8L151K2、SX1231的初始化后,配置寄存器写入相应的初始化RF控制字;然后通过SPI连续写寄存器向TX FIFO内写入需要发送的数据;再切换到发射模式。当数据发送完后,PacketSent寄存器置1,同时映射的DIO PIN会变成高电平通知MCU数据包发送完成。然后写数据到FIFO,发送,如此循环。直到所有数据发送完成,进入Sleep模式。

图3 数据收发流程图

数据接收程序

程序完成STM8L151K2、SX1231的初始化后,配置寄存器写入相应的初始化RF控制字,把SX1231配置为接收状态。检测PayloadReady为高电平时,表明已经收到数据,然后MCU从FIFO中读取数据,并进行处理。如此循环直至完成接收。

系统测试结果

系统测试条件及设置

该部分为本系统测试时的设置,根据不同的应用需求,部分设置可用作相应的变动。

电源电压:3.3V

频率:868.3MHz

数据速率:4.8kbps

频偏:5.0kHz

接收机带宽:10kHz

数据类型:PN15

功率设定:4dBm

测试结果

发射功率

从图4中可以看到,发射功率为6.86dBm。低于5mW(7dBm)的规范要求。

图4 发射功率

载波频率容限:100x10-6

从图5中可以看出,设置为868.3MHz输出,实际测量的频率为868.2960MHz,则频率偏差为((868.30-868.296)MHz/868MHz)=4.6×10-6,小于规定的载波频率容限100×10-6。

图5 载波频率容限

发射信号的占空比限值:1%

发射信号的占空比通常指在一定时间内,发射信号的时间与未发射信号的时间比值。这主要取决于应用的要求,但是对类似短距离无线通信,发射器的发射的时间是非常的小,适合于各种控制类应用。如抄表的应用中,每个月抄表一次,而且每次发射的时间都小于1秒,这个占空比远远小于1%。

图6 信道间隔和占用带宽

图7 邻信道功率

信道间隔和占用带宽

对于25kHz的信道间隔,允许的占用带宽为8.5kHz~16kHz之间。从图6的结果中可以看到,占有99%的能量的占用带宽为14.7247kHz,小于16kHz。

邻信道功率

在载波25kHz频率偏移处的功率须小于载波功率40dB。

接收灵敏度

接收灵敏度是-113.4dBm@0.1%。整个系统的接收链路预算为120.2dB。通信距离可以达到600m左右。

从测试结果可看出该系统具有很好的性能,精准的频率控制,高的接收灵敏度,可以满足于宽带的应用要求,而且结果也表明完全适合于窄带应用。完全满足于中国年微功率(短距离)无线电应用对于868MHz~868.6MHz频段的规范要求。在本系统的基础上,稍作改变就可适用于不同的应用环境。

更多资讯和精彩内容请移至:
STM8单片机中文官网
意法半导体/ST/STM
 

继续阅读
意法半导体新推出STM32和STM8认证软件包,可助力设备达到功能安全标准

中国,2020年5月12日——意法半导体发布了三款功能安全软件包,简化基于STM32和STM8微控制器和微处理器的安全至关重要的工业、医疗、消费和汽车产品的开发。

意法半导体推出经济好用的STM8 Nucleo-32开发板

中国,2019年12月5日——意法半导体新推出的STM8开发板采用方便好用的Nucleo-32 开发板外形尺寸,让使用8位STM8微控制器(MCU)开发原型速度更快,更经济实惠,更容易上手,适合所有类型的创客。

官方公布:ST新工厂启动,STM8产能提升!!

为满足市场需求,意法半导体启动新工厂、扩充STM8产能取得积极进展,预计在2018年第四季度初开始批量出货。

意法半导体发布多合一在线工具,简化STM32和STM8 微控制器电机控制设计流程

中国,2019年2月19日 — 意法半导体ST-MC-SUITE可轻松获取STM32和STM8微控制器电机控制应用开发全部资源的入口。该工具允许用户收集教程和文档,存储项目设置(硬件和软件),获取软件解决方案下载链接,包括最新的X-CUBE-MCSDK软件包,以及在线购买评估硬件。

最新!STM8L001紧凑型微控制器降低功耗、成本和封装面积 满足智能设备的基本开发要求

中国,2018年12月3日 -- 意法半导体的STM8L001超低功耗微控制器在尺寸紧凑的低引脚数SO-8封装内整合高能效的8位STM8处理器内核与有实效的基本外设,目标应用定位于注重成本的产品设备。该微控制器提供开发基本感测、通信和控制模块所需的关键功能,包括两个比较器、SPI、I2C和UART接口,以及一个8位、两个16位定时器。