当前位置:文档之家› 基于CC1000的射频光传输模块FSK通信设计

基于CC1000的射频光传输模块FSK通信设计

基于CC1000的射频光传输模块FSK通信设计

罗丽容,黄秋元,刘进

武汉理工大学通信与信息系统,湖北武汉(430070)

E-mail:llrjane@https://www.doczj.com/doc/7e13730148.html,

摘要:本文给出了一种基于CC1000实现射频光传输模块FSK通信的设计方法。在文中阐述了FSK技术原理,介绍了CC1000和MCU的硬件接口电路,详细讨论了软件的设计,并给出了程序流程图。

关键词:射频光传输模块,CC1000,数据通信,环行队列

中图分类号:TN91

1.引言

射频光纤传输模块(也称光端机)与移动通信直放站设备相配合可以构成移动通信光纤传输直放站系统。早期射频光纤传输模块仅能完成射频信号到光信号的转换,没有其它功能。随着移动运营商要求的提高,光纤直放站都需要有监控功能。因此,模块在原有基础上,增加了FSK通信功能,可方便直放站系统的监控数据传输。本文讲述了一款基于射频收发芯片CC1000的FSK数据通信系统的设计和实现。

2.光模块工作原理

直放站天线收到的上行信号经过放大器将其调整到一定的电平,送入光发送端机,射频光传输模块(以下简称为光模块)把上行信号和经过FSK调制的监控信号一起进行光调制,并通过光纤进行传输。在收端光接收机将光信号转化成相应的电信号,送至基站。监控信号通过滤波器选频从上行信号中分离出来,再通过FSK解调还原成数字信号;同理,由基站来的下行信号,送至光模块进行光调制,并通过光纤进行传输。在收端光接收机将光信号转化成相应的电信号,该信号经直放站放大器变为所需的功率电平信号,并通过双工环型器由天线发射出去,从而构成由光纤作为传输介质的直放站系统。其结构如图1所示。

近端选端

图1 直放站结构框图

3.FSK电路设计

3.1 FSK技术

FSK即"频移键控",它的英译为"Frequency Shift Keying"。二进制移频键控记为2FSK。它是数据通信中使用较早的一种通信方式。由于这种调制解调方式容易实现,抗噪声和抗衰

减性能较强,因此在中低速数据传输通信系统中得到了较为广泛的应用[1]。根据国际电报和电话咨询委员会(ITU-T )的建议传输速率低于1200波特以下的设备一般采用FSK 方式传输数据。在衰落信道(短波通信)中传输数据。

FSK 调制信号的产生的工作原理是用载波的频率变化来传送数字消息。在2FSK 中载波频率随着调制信号1和0而变化,1对应1f ,0对应2f 即:

212[()]cos [()]cos FSK n n n n n n

S a g t nT w t a g t nT w t =?+?∑∑

其中:1w =12f π,2w =22f π。

二进制里只有两个数0和1,传送1的时候用一种频率,传送0的时候用另一种频率,这就是FSK 的实质。

3.2 硬件电路设计

在此设计中采用的是无线FSK 收发芯片,但采用光纤传输的方式,因为光纤传输受外界影响小,并且在传输过程中光损小,传输距离远远大于无线传输距离。由于无线收发芯片的种类和数量比较多,选择无线收发芯片时应考虑需要以下几点因素:功耗、发射功率、接收灵敏度、收发芯片所需的外围元件数量和芯片成本等。CC1000是基于Chipcon 公司的Smart RF 技术制造的可编程、半双工超高频单片收发器芯片, 它主要是为315、433、868和915MHz 的ISM 和SRD 设备所设计,可以编程工作在300~1000MHz 范围之间的任一频率上。同时其灵敏度可达-109dBm , 可编程输出功率-20 ~10 dBm ,FSK 调制数据率最高可达76.8kBaud ,可在2.7~3.3V 低电源工作,具有250Hz 步长可编程频率能力,适用于跳频协议。主要工作参数都能通过串行总线接口编程改变,使用非常灵活。

在此设计中在本系统中对CC1000的性能要求如下:

① 调制速率:9.6Kbps

② 编码方式:NRZ 码

③ 传输模式:异步传输UART 模式

④ 频率设置:发射中心频率 433.916MHz ,“1” 433.948MHz “0” 433.884MHz

接收本征频率 433.766 MHz

⑤ 调制频偏:±32KHz

⑥ 载频频率稳定度:±25ppm (即±10KHz )

⑦ 接收灵敏度:≤-90dBm

MCU 与CC1000的硬件接口电路如图2所示。MCU 使用3个输出管脚用于接口(PDATA 、PCLK 、PALE),PDATA 必须是双向管脚用来读回数据,另一个双向管脚用于待发送的数据DIO 和接收数据,提供数据定时的DCLK 应与微控器输入端相连,本文中CC1000采用异步传输UART 模式,DIO 用于数据输入与MCU 串口TX 连接,DCLK 用于数据输出,与MCU 串口RX 连接。其余管脚能用来监视LOCK 信号在管脚CHP_OUT ,当PLL 锁定时该信号为逻辑高电平。当使用一个外接终端电阻时,RSSI (接收信号强度指示)电压能通过A/D 测量出,可以检测接收信号强度。在设计印制电路板时应注意:要求使用双面PCB 板,地平面放在底层以减少射频信号的辐射和串扰,接地管脚应使用单独的过孔,尽量靠近封装管脚接地,去耦电容也应尽量靠近电源脚放置,并通过单独的过孔与接地层相连,外围元件越小越好最好使用表面固定装置。

图2 CC1000与MCU 接口电路图

4. 软件设计

整体系统数据的发射和接收如框图3所示。MCU 通过串口0把上位机的数据存储,组帧后,由串口1传给CC1000,通过射频发射机传出,远端MCU 依据接收到的数据,做出相应的处理,并重新组帧,传给近端的上位机。

图3 系统框图

4.1 数据帧结构

为了区分噪声和保证数据的可靠性,数据帧的格式如下:

同步码 前导码 有效数据 结束码

① 同步码:这是一个连续的“0”和“1”(二进制)交替信号(按字节,0x55),比特数由CC1000中寄存器MODEM1中的SETTLING[1:0]来设置[2],其对应关系如下:

表1 最小比特数 设置

SETTLING 手动锁定 UART 模式

LOCK_A VG_MODE=1

LOCK_A VG_IN=0→1

00 11bit

01 22bit

10 43bit

11 86bit

这个信号的作用在于减少与真实的载波信号类似的信号的干扰,并实现接收端和发送端帧同步,CC1000接收端只有正确接收到这个信号,并锁定均值滤波器(LOCK_AVG_IN=1),后续信号才会有效。在此设计中SETTLING[1:0]为00,即11bit 。

②前导码:0xFF (即“1”持续高电平)。

③有效数据:需要传送的监控数据。

④结束码:0xFF (即“1”持续高电平)。

近端 远端

4.2 数据收发程序设计

在通信过程中CC1000具有3种状态:IDLE(空闲)、RX(接收数据)、TX(发送数据)。整体上看,这是个具有3种状态的状态机模型,状态之间的相互转换见图4。由于CC1000为半双工通信模式,因而RX和TX两个状态具有互斥性。

图4 CC1000状态图

串口数据的接收由中断完成,串口0收到数据触发接收中断,并将接收数据缓存到缓冲区Buffer0。串口1接收中断根据同步码,前导码和结束码来判断并缓存有效数据,其流程见图5。只有当接收端收到5个同步码之后,才可将接收数据保存到缓冲区内。为了防止突发的乱码,当接收的有效数据超过900时,仍为收到结束码,则判定此帧数据无效,因而在使用中应当避免数据帧长度过长。

图5 串口1中断服务程序

数据的发送分为两部分:CC1000发送数据和向上位机发送数据。CC1000发送数据的过程中应该考虑CC1000收发的互斥性以及前导码和结束码的发送时间。CC1000发送数据流程图见图6。程序中设置为每次发送三次前导码和结束码,因此在向上位机发送数据的过程中要剔除掉缓冲区中多余的前导码和结束码,实现数据的透明传输。

图6 数据发送流程图

4.3 数据环形缓冲区

MCU 程序的重要部分为数据的存储和转发。缓冲区数据队列示意图如图7所示,可以把数组想象为一个环形,而不是直线形,采用这种方式,当从队列中添加或删除记录项时,对首将持续沿着数组追逐到队尾,因而可以无限制的前行,但是仍呆在一个限定的圆圈内。在不同的时间,队列将占用数组的不同部分,但永远都不用担心会超过这个空间之外,除非数组被彻底的占满,在这种情况下,称为溢出[3]。在本设计中采用*BufferHead 和*BufferTail 跟踪出队(即数据的发送)和入队(即数据的接收)的数据,当两个指针指向同一位置时,表示缓冲区空,即数据已发送完。

图7 缓冲区数据处理示意图

队首

5. 结 论

FSK 通信的稳定性是射频光模块的一个重要的性能指标,它直接影响到直放站工作的可靠性。此系统的测试方法如下图8和图9所示。测试中所用的光衰作用是模拟实际工程中,光纤的长度所产生的光损。测试方法1要借助PC 机的两个串口COM1和COM2,通过PC 机上的COM1连续发送有规律的数据包,在另一端COM2接收;同时COM2发送数据包,COM1接收。统计发送数据包和丢失数据包的数量,测试数据量不小于1000帧,即可计算误帧率。

=100%×(发送数据数-接收正确数)误帧率发送数据数

测试方法2和测试方法1有所不同,方法2只需要1个PC 机串口,直接把光模块2的串口0的RXD 和TXD 短接。这种方法比较简单,而且具有更高的可靠性。

图8 测试方法1

图9 测试方法2

本系统可以实现在18dB 光衰时,误码率3

10?≤,通信效率高和可靠性高的特点,并且已在实际中使用,取得了令人满意的效果。

参考文献

[1]樊昌信,张甫翊,徐炳祥等. 通信原理[M],北京:国防工业大学出版社,2001.5。

[2]K.H.Torvmark. CC1000/CC1050 Microcontroller interfacing[R]. AN009. USA: Texas Instruments, 2005

[3]Robert L. Kruse(敖富江译). 数据结构与程序设计——C语言(第二版)[M],北京:清华大学出版社. 2005.4

Design of RF Optic Transceiver FSK Communication Based

on CC1000

Luo Lirong, Huang Qiuyuan, Liu Jin

Communication and Information system WuHan University of Technology, WuHan (430070)

Abstract

In this paper we give a design method of realize FSK communication of RF optic transceiver module based on CC1000. Firstly, we introduce the principle of FSK. Secondly, we introduce the interface circuit of CC1000 and MCU. Finally, we discuss the design of software in detail and give the program flow.

Keywords: RF Optic Transceiver; CC1000; Data Communication; Loop queue

相关主题
文本预览
相关文档 最新文档