DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1182|回复: 0
打印 上一主题 下一主题

[待整理] 无线数据传输后端RFW—D100的原理与应用

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-11 22:48:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
引 言

        短程RF通信是一种比较热门的通信技术。支持该通信技术的标准很多,如lEEE802.11a、Hiperlan2、IEEE802.15.1(蓝牙)、HomeRF和IEEE802.1]b(Wi-Fi)等,但总的来说,支持这些标准的器件不适合低端产品,功耗大、结构复杂、价格高。以色列RF Waves公司面向低端市场,推出的RFWl02芯片组和RFW302芯片组,符合FCC(美国联邦通信委员会)和ETSI(欧洲电信标准协会)的技术规范,用于短程RF通信,取得了很好的效果。RF Waves公司还为这两种芯片组提供了RFW—D1OO数字后端。笔者在以W78LE516单片机、RFWl02芯片组和RFW—D1OO数字后端为核心开发产品时,深感RFW—D100所起的巨大作用:降低了单片机程序的复杂性,节省了CPU能量和资源。

1   RFW—D100简介

        RFW—D100是为RFWl02/RFW302芯片组提供的一个数字后端。它为MCU提供了一个并行接口,使之连到RFWl02。在RF应用中,MCU负责MAC层的协议。RFW—D1OO减少MCU处理MAC层协议的实时要求。使MCU通过一个并行口连接到RFWl02,类似于存储器寻址,它将快速的串行输入转换成8位的字节,使8位的MCU更容易处理。此外,RFW—D1OO仅使用一个低速率的振荡器,通过1个16字节的FIFO来缓冲输入/输出,使MCU与RFW—D100之间的寻址效率更高。MCU不是每次中断读/写1个字节,而是每16个字节,相比于每字节的输入都引起一个中断。这样就明显减少了MCU在读输入字节时的开销。当使用FIFO时,MCU为所有FIFO的字节所付出的开销与没有用FIFO时仅为1个字节付出的开销是一样的。

2   RFW—D1OO的结构、工作原理及功能

RFW-D100的结构图如图1所示。
        振荡器模组是RFW—D100的时钟源,可以不用,直接用一个外部振荡器去驱动RFW—DlOO。RFW—D100有三种模式:掉电模式、空闲模式和工作模式。前两种模式可使芯片处于低功耗状态,节省系统能量。由于在进入前两种模式前,保存了所有寄存器中的值,所以系统唤醒时间短。RFW—D100有一个预相关器,在数据进行收/发时,RFW—D1OO首先检测/发送一个预同步头,目的是启动接收端的RFWl02,以使接收端同步。RFW—D100为维持系统的灵敏性,在进行数据收发时,当连“O”符号太多时,在传送端会在数据流中自动加一个“1”符号;而在接收端,RFW一D100会将这个“l”符号自动拿走。

        RFWD1OO能够根据设置,自动在要发送的每一信息包中加上附加的CRC信息,在接收端也会自动计算CRC信息,进行CRC校验,降低MCU的负担,提高数据的可靠性。当有信息包要收发时,WDT通信看门狗可以在任何时候,将MCU从省电模式下唤醒。RFW一D100设置了16字节的接收/发送缓冲区,理论上能使MCU每128μs读/写数据,而不是串行情况下的1 μs或在有串并转换的情况下的8 μs;RFW—D100的运作以处理各种中断事件为核心,开发人员可以根据情况灵活地启动/关闭中断,以适应各种环境。RFW一D100提供了网络ID滤波器和节点ID滤波器,根据网络地址和节点地址过滤输人信息,从而区别不同网络和不同节点问的信息。RFW-D100中使用两种技术以取得较强的载波侦听能力;①内部比较器RSSI(无线信号强度指示),使RFW—D100可以鉴别任何强度的、有可能阻塞其自身的传送;②射频波网络侦听算法,使RFW—D100避免与其本身网络或同一区域不同网络站点的射频波的冲突。RFW—D100的引脚功能如表1所列。

3  应 用

        用RFWl02芯片组和RFW一D100开发一套点对多点的无线收发系统。上位机采用W78LE516,通过USB总线与PC相连,通过RFW一D100与RFWl02芯片组连接进行无线数据收发;下位机采用MSP4130F133,通过RFW—D100与RFWl02芯片组连接进行无线数据收发。开发过程发现,目前与RFW—D100、RFWl02芯片组相关的文献中所提供的电路,基本上都是参照产品的数据手册,参考价值有限。这里,提供一种上位机无线收发部分的硬件电路,如图2所示。

        在具体的开发中,读者可根据自己的MCU型号,参考图2,配置RFW—D100的外围电阻电容,即可形成自己可运行的电路。其中RFW—D100的26、29、30号引脚直接与RFWl02芯片组相应引脚相连。

        在MCU的软件编程中,开发人员实际要做的是对RFW—D100的各种寄存器进行正确的寻址、写入控制字、读/写数据等,参考文献[1]中有较详细的描述。寄存器分配情况如表2所列。
        这里,仅提出一点需要注意的地方:程序每次数据收发,都要对相关的控制寄存器进行重新写入,否则数据不能正常收发。如下面的程序段,是在发送数据前对各控制寄存器写入的控制字,控制字的具体含义见参考文献。其中WRITE(…,…)为自定义的宏,CS_PIN即为图2中MCU的P1.4脚。

……

#ddine WRITE(RE(REGVAL) CS_PIN=0;*((unsigned char

xdata*)(REG))=VAL;CS_PIN=1

……

WRITE(SCR4
.3);

WRITE(SCR2,OxlC);

WRITE(BLR,6);

WRITE(LCR,O)l

WRITE(BIR,0xAA);

WRITE(N1R.0x55);

WRITE(PPR,0xFA);

WRITE(PSR,12);

WRITE(PRE_H,0xF5);

WRITE(PRE_L,OxBB)}

WRITE(IER,16);

WRITE(SCR3,128);

WRITE(SCR4,O);

4   结论

        使用无线数据传输数字后端RFW DlOO进行产品开发,有以下优点:更短的开发时间,更短的上市时间;为其他方面的应用节省CPU能量和资源;是一个简单的、标准的、完整的解决方案,开发人员仅需做外围元器件的调整工作。
        作者:空军工程大学 王楠 杨凯 胡文东
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-7-30 11:57 , 耗时 0.090912 秒, 21 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表