DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

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

[无线] 基于ARM和nRF905的无线数据收发系统

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-17 23:41:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
所设计的无线数据收发系统是无线随动控制系统的重要组成部分,主要由nRF905无线收发模块和LPC2148 ARM开发板组成,用来实现手动系统与随动系统之间的无线数据传输,有效地解决了在恶劣环境下布线困难的问题。

1 nRF905无线收发模块
    nRF905是一个工作在433/868/915 MHz的ISM频段,完全集成的单片无线收发器芯片。nRF905芯片内部包含有一个完全集成的调制器、带解码器的接收器、功率放大器、晶体振荡器等电路。其采用DSS+PLL频率合成技术和GMSK调制,频率稳定性非常好,抗干扰能力强;可以很容易通过SPI接口编程配置其工作模式;最多信道数可达170个,能够满足需要多信道工作的特殊场合;最远传输距离可达1 000 m;最高数据速率为50 Kb/s;工作电压为1.9~3.6 V;在发射功率为-lO dbm时,电流消耗为11 mA;在接收状态时,电流消耗为12.5 mA,具有低功耗模式;采用32引脚端的QFN 5 mm×5 mm封装。
    nRF905通过对TRX_CE,TX_EN,PWM_UP的设置来实现不同的工作模式,工作模式如表1所示,模式设置如表2所示。




    nRF905的工作模式通过SPI接口对芯片内部的寄存器进行配置实现。所有配置字都是通过SPI接口送给nRF905。SIP接口的工作方式可通过SPI指令进行设置。当nRF905处于空闲模式或关机模式时,SPI接口可以保持在工作状态。
    SPI接口由状态寄存器、射频配置寄存器、发送地址寄存器、发送数据寄存器和接收数据寄存器5个寄存器组成。状态寄存器包含数据准备好引脚状态信息和地址匹配引脚状态信息;射频配置寄存器包含收发器配置信息,如频率和输出功能等;发送地址寄存器包含接收机的地址和数据的字节数;发送数据寄存器包含待发送的数据包的信息,如字节数等;接收数据寄存器包含要接收的数据的字节数等信息。
    nRF905的应用电路如图1所示,nRF905外围元件均采用贴片封装形式。
                          
                       
                          
                               





2 LPC2148开发板与无线收发器电路模块的连接
    nRF905无线收发器电路模块与LPC2148开发板的连接如图2所示。两者之间的通信是通过SPI接口进行的,LPC2148有2个专用SPI总线接口,用户也可使用模拟SPI对nRF905进行操作,此处采用LPC2148的SPI0。搭建两个这样的模块即可以组成一个无线数据收发系统,示意图如图3所示。





3 无线收发系统程序设计
    无线收发系统主程序包含有发射和接收两部分,用来完成数据的收发。
3.1 发射部分
    使用定时器0定时1 s,每隔1 s蜂鸣器开启且发送一次数据,发送完一次数据后蜂鸣器停止呜叫。发射部分流程图如图4所示。
                          
                       
                          
                               




    启动ADS 1.2,使用ARM Executable Image forLPC2148工程模板创建一个工程。使用过程中,要将nRF905.c和nRF905.h包含入工程。nRF905.c中包含了nRF905的管脚初始化和配置函数,nRF905.h中包含nRF905的管脚定义、地址定义等。
3.2 接收部分
    接收部分的程序流程图如图5所示。




    系统收发程序清单读者如有需要可以向作者索取。

4 结语
    采用LPC2148和nRF905构成的无线数据收发系统工作在433 MHz的ISM频段,最远传输距离可达1 000 m,数据速率为50 Kb/s。工作电压为3.3 V,在发射功率为-10 dbm时,电流消耗为11 mA。由于系统采用DSS+PLL频率合成技术和GMSK调制,频率稳定性非常好,抗干扰能力强;可以很容易通过SPI接口编程配置其工作模式。信道数最多可达170个,能够满足需要多信道工作的特殊场合使用。系统具有低功耗模式,低功耗模式电流消耗仅为42μA。
    利用LPC2148具有45个可承受5 V电压的I/O接口,全速USb 2.O,UART,SPI和SSP串行外设接口,I2C总线接口,2个8通道10位的A/D和1个10位的D/A转换器,以及6路输出的PWM接口,可以方便地构成一个无线数据采集与控制系统。
    实验证明该系统在无线随动控制系统中使用效果良好。
                          
                       
                          
                               
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-12 18:20 , 耗时 0.083687 秒, 18 个查询请求 , Gzip 开启.

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

桂公网安备 45031202000115号

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

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

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

QQ:28000622;Email:libyoufer@sina.com

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

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