打印
[资料分享]

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

[复制链接]
769|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Jasmines|  楼主 | 2019-5-15 17:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
基于ARM和nRF905的无线数据收发系统

 所设计的 无线数据收发 系统是无线随动控制系统的重要组成部分,主要由 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 for LPC2148 工程模板创建一个工程。使用过程中,要将 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接口,可以方便地构成一个无线数据采集与控制系统。



使用特权

评论回复

相关帖子

沙发
Jasmines|  楼主 | 2019-5-15 17:08 | 只看该作者
基于ARM和nRF905的无线数据收发系统

文档1.pdf

198.48 KB

使用特权

评论回复
板凳
kkzz| | 2019-5-17 16:31 | 只看该作者
NRF905无线收发模块的二次开发  

使用特权

评论回复
地板
hudi008| | 2019-5-17 16:31 | 只看该作者
利用NRF905实现无线温度采集

使用特权

评论回复
5
lzmm| | 2019-5-17 16:31 | 只看该作者
所有配置都通过SPI接口?  

使用特权

评论回复
6
minzisc| | 2019-5-17 16:32 | 只看该作者
nrf905替代NRF51822   

使用特权

评论回复
7
selongli| | 2019-5-17 16:32 | 只看该作者
nRF24L0 无线数传模块

使用特权

评论回复
8
fentianyou| | 2019-5-17 16:33 | 只看该作者
905的PCB天线不太好做  

使用特权

评论回复
9
xiaoyaodz| | 2019-5-17 16:33 | 只看该作者
nRF24L01、nRF905、cc1100这三种无线模块哪种简单?

使用特权

评论回复
评论
dirtwillfly 2019-5-17 22:48 回复TA
推荐cc1100 
10
febgxu| | 2019-5-17 16:33 | 只看该作者
无线通信可以使用某种通信协议如zigbee或者蓝牙什么的

使用特权

评论回复
11
sdlls| | 2019-5-17 16:34 | 只看该作者
基于nRF24l01模块的Zigbee无线通信系统

使用特权

评论回复
12
pixhw| | 2019-5-17 16:34 | 只看该作者
nRF905和nRF24L01哪个无线通信模块好一些?

使用特权

评论回复
13
febgxu| | 2019-5-17 16:34 | 只看该作者
大多是使用集成这种协议的RF芯片实现的

使用特权

评论回复
14
kkzz| | 2019-5-17 16:34 | 只看该作者
主要工作于433MHz、868MHz和915MHz的ISM频段。

使用特权

评论回复
15
xiaoyaodz| | 2019-5-17 16:34 | 只看该作者
要要用到无线模块,请问这3种无线模块哪种比较容易使用啊?

使用特权

评论回复
16
hudi008| | 2019-5-17 16:34 | 只看该作者
nrf905 这款芯片相比大家都非常熟悉了  

使用特权

评论回复
17
fentianyou| | 2019-5-17 16:34 | 只看该作者
NRF905是433M-915M超高频的  

使用特权

评论回复
18
lzmm| | 2019-5-17 16:34 | 只看该作者
传递的速度能够有多快呢?     

使用特权

评论回复
19
selongli| | 2019-5-17 16:34 | 只看该作者
距离比24L01远一些?   

使用特权

评论回复
20
minzisc| | 2019-5-17 16:34 | 只看该作者
nrf905 提供低功耗无线射频IC

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

745

主题

1077

帖子

10

粉丝