物联传媒 旗下网站
登录 注册
RFID世界网 >  技术文章  >  其他  >  正文

基于nRF905无线数传模块的设计及其实现

作者:微计算机信息
来源:RFID世界网
日期:2007-05-23 11:58:58
摘要:随着信息技术和计算机科学的变革和发展,无线通讯技术已经成为一种发展趋势在各个领域当中逐步得到应用。无线通讯传输技术具有成本低、无需通讯电缆、不受应用环境限制、组态灵活、重构性强等优点,这就给无线通信技术带来了很大的发展空间。本文采用了挪威Nordic VLSI公司最新推出的单片无线收发一体芯片nRF905,并在此基础上设计出多功能无线数传模块。

1 引言  

当代科学技术日益向高速化、智能化、信息化、网络化发展,各种各样的制造业和通信业设备除了可以与计算机联机外,还可以互相联机,而实现设备间相互联机的最具发展潜力的方式就是无线通信。与有线通信方式相比,无线通信具有一系列优点,特别适用于手持现场设备、电池供电设备、遥控遥测设备、水文气象监控设备、生物信号采集系统、工业数据采集系统等。在上述无线通信技术应用实际中,无线通信协议起着至关重要的作用,直接关系到无线通信系统的安全性和误码率以及系统运行的速度。本文基于挪威Nordic VLSI公司最新推出的单片无线收发一体芯片nRF905设计出多功能无线数传模块:具有标准RS232C和RS485接口通信模块,设计的多功能无线数传模块由基于nRF905的高频头和标准通信接口模块组成。 

2 硬件设计 

2.1 高频头设计 

2.1.1 nRF905 简介 

nRF905是挪威Nordic VLSI公司推出的单片射频收发器,工作电压为1.9~3.6V,32引脚QFN封装(5×5mm),工作于433/868/915MHz三个ISM(工业、科学和医学)频道,频道之间的转换时间小于650us。nRF905由频率合成器、接收解调器、功率放大器、晶体振荡器和调制器组成,不需外加声表滤波器, ShockBurst工作模式,自动处理字头和CRC(循环冗余码校验),使用SPI接口与微控制器通信,配置非常方便。此外,其功耗非常低,以-10dBm的输出功率发射时电流只有11mA,工作于接收模式时的电流为12.5mA,内建空闲模式与关机模式,易于实现节能。nRF905适用于无线数据通信、无线报警及安全系统、无线开锁、无线监测、家庭自动化和玩具等诸多领域。 

nRF905片内集成了电源管理、晶体振荡器、低噪声放大器、频率合成器功率放大器等模块,曼彻斯特编码/解码由片内硬件完成,无需用户对数据进行曼彻斯特编码,因此使用非常方便。nRF905的详细结 构如图1所示,以及管脚功能如表1所示。 



图1  nRF905结构图                              



图2 由nRF905组成的高频头用户接口 

2.1.2 高频头用户接口设计

 图2中给出了由nRF905组成的高频头用户接口,该接口由10个数字输入/输出I/O组成,按照工作可分为三组: 

l         模式控制 

该接口由TRX_CE、TXEN、PWR组成控制由nRF905组成的高频头的四种工作模式:掉电和SPI编程模式;待机和SPI编程模式;发射模式;接收模式,各种模式的控制模式见下表1。 

l         SPI接口                                             

 表1 各种模式的控制模式  

   

PWR

TRX_CE

TXEN

工作模式

0

X

X

掉电和SPI编程模式

1

0

X

待机和SPI编程模式

1

1

0

接收

1

1

1

发射


 SPI接口由SCK、MISO、MOSI以及CSN组成。 

(1)在配置模式下单片机通过SPI接口配置高频头的工作参数; 

(2)在发射/接收模式下单片机SPI接口发送和接收数据。 

l         状态输出接口 

提供载波检测输出CD,地址匹配输出AM,数据就绪输出DR。 

2.2 标准通信接口模块 

标准通信接口模块主要由三部分组成:标准RS232C接口模块;标准RS485接口模块;无线通信接口模块。标准RS232C接口模块,采用MAXIM公司生产的MAX232A芯片将微处理器(MCU)的TTL电平与PC机串口标准RS232C电平进行相互转换。标准RS485接口模块采用Motorola公司生产的MC3486和MC3487电平转换芯片实现TTL电平与RS485电平的转换。无线通信接口模块采用Philips公司生产的74LVC4245A电平转换芯片实现3V与5V电平转换,可以实现MCU与nRF905之间的双向数据通信。其工作原理为:根据事先设定的通信协议,MCU通过设定74LVC4245A的DIR引脚为高和低电平,可以分别实现数据由MCU到nRF905的传输(即5V转换为3V)和nRF905到MCU的传输(即3V转换为5V)。 

3 软件设计 

3.1 RS232接口通信软件设计 

在本设计中PC机发送字符与接受字符均采用查询方式,发送前先读取通信或状态寄存器,查询发送保持寄存器是否为空;接收前先读取通信或状态寄存器,查询一帧据是否收完。从机采用中断方式,即接受到地址帧后就进行串行口中断申请,CPU响应后,进入中断服务程序。 

PC机通讯程序用Visual Basic开发。我们利用了VB提供的串行通讯专用ActiveX控件MSComm, 该控件屏蔽了通讯过程的低层操作。只需设置MSComm 控件的相应属性,调用控件相应方法和事件,按照通讯协议要求发出命令号,下位机完成相应功能,便能实现数据通讯。 

3.2 RS485接口通信软件设计 

利用RS485接口可以实现 PC机与单片机之间、单片机与单片机之间的远距离点对点和点对多点的异步串行通信。由于RS485通讯是一种半双工通讯,发送和接收共用同一物理信道。在任意时刻只允许一台单机处于发送状态。因此要求应答的单机必须在侦听到总线上呼叫信号已经发送完毕,并且没有其它单机发出应答信号的情况下,才能应答。半双工通讯对主机和从机的发送和接收时序有严格的要求。如果在时序上配合不好,就会发生总线冲突,使整个系统的通讯瘫痪,无法正常工作。对于多机通信,总线上所连接的各单机的发送控制信号在时序上应完全隔开,以保证发送和接收信号的完整和正确避免总线上信号的碰撞。 

3.3 基于nRF905的高频头的无线通信软件设计 

由于与RF协议相关的高速信号处理部分已经嵌入在模块内部,高频头可与各种低成本单片机配合使用,也可以与DSP等高速处理器配合使用;高频头提供一个SPI接口,速率由微控制器自己设定的接口速度决定。在RX模式中,地址匹配(AM)和数据准备就绪(DR)信号通知MCU一个有效的地址和数据包已经各自接收完成,微控制器即可通过SPI读取接收的数据。在TX模式中,高频头自动产生前导码和CRC校验码,数据准备就绪(DR)信号通知MCU数据传输已经完成。这意味着降低MCU的存储器需求也就是降低MCU成本,同时缩短软件开发时间。nRF905接收模式如图4所示,nRF905发射模式如图5所示。 

3.3.1 配置编程 

上电以后MCU首先配置高频头模块。先将PWR、TXEN、TRX_CE设为配置模式(见表1),MCU通过SPI将配置数据移入高频头模块;在掉电和待机模式工作后,配置内容仍然有效。配置数据只有当电源撤除后才会丢失。 

3.3.2 发射模式 

l         当MCU有数据需要发往规定节点时,接收节点的地址(TX-address)和有效数据(TX-payload)通过SPI接口传送给高频头。应用协议或MCU设置接口速度。                    



图4 nRF905接收模式 

l         MCU设置TRX_CE,TXEN为高来启动传输。  

l         高频头内部处理: 

(1)无线系统自动上电 

(2)数据包完成(加前导码和CRC校验码) 

(3)数据包发送(100kbps,GFSK,曼切斯特编码) 

l         如果AUTO_RETRAN被设置为高,高频头将连续地发送数据包,直到TRX_CE被设置为低。 

l         当TRX_CE被设置为低时,高频头结束数据传输并将自己设置成待机模式。 

3.3.3 接收模式 

l         通过设置TRX_CE高,TXEN低来选择RX模式。 

l         650us以后,高频头监测空中的信息。 

l         当高频头发现和接收频率相同的载波时,载波检测(CD)被置高。 

l         当高频头接收到有效的地址时,地址匹配(AM)被置高。 

l         当高频头接收到有效的数据包(CRC校验正确)时,高频头去掉前导码,地址和CRC位,数据准备就绪(DR)被置高。               

l         MCU设置TRX_CE低,进入standby模式(待机模式)。 

l         MCU可以以合适的速率通过SPI接口读出有效数据。 

l         当所有的有效数据被读出后,高频头将AM和DR置低。 

  

4 结束语 

随着信息技术和计算机科学的变革和发展,无线通讯技术已经成为一种发展趋势在各个领域当中逐步得到应用。无线通讯传输技术具有成本低、无需通讯电缆、不受应用环境限制、组态灵活、重构性强等优点,这就给无线通信技术带来了很大的发展空间。本文采用了挪威Nordic VLSI公司最新推出的单片无线收发一体芯片nRF905,并在此基础上设计出多功能无线数传模块。 

经过实际检验,此模块运行稳定,通信可靠,能够实现远距离无线通信,PC机与单片机之间、单片机与单片机之间的远距离点对点和点对多点的异步串行通信。从实用性角度考虑,可以运用在遥控、遥测、无线抄表、门禁系统、小区传呼、工业数据采集系统、无线标签、身份识别、非接触RF、智能卡、小型无线数据终端、安全防火系统、无线遥控系统、生物信号采集、水文气象监控、机器人控制、信息家电等实际工作环境中。                       



图5 nRF905发送模式 

参考文献 

[1] Single chip 433/868/915MHz Transceiver nRF905. Nordic VLSI ASA,2004.1. 

[2] nRF905 RF and antenna layout. Nordic Semiconductor ASA,2004.10. 

[3] 陈蕾,仇润鹤,薛冰雷,微计算机信息,一种应用于车载系统的GPS接收机射频前端的设计,2005(12),196-197 

[4] 李群芳,张士军,黄建. 单片微型计算机与接口技术. 北京:电子工业出版社,2005.  

[5] 李朝青. PC机及单片机数据通信技术. 北京:北京航空航天大学出版社,2000. 

[6] 王秉钧. 通信系统. 西安:西安电子科技大学出版社,1999.