RF2401中文资料

一、模块介绍
申智惠NewMsg_RF2401B (尺寸34mm X 17mm  板厚:1mm)
(1) 2.4Ghz 全球开放ISM 频段免许可证使用
(2) 最高工作速率1Mbps,高效GFSK调制,抗干扰能力强,特别适合工业控制场合
(3) 125 频道,满足多点通信和跳频通信需要
(4) 内置硬件CRC 检错和点对多点通信地址控制
(5) 低功耗1.9 - 3.6V 工作,待机模式下状态仅为1uA
(6) 内置2.4Ghz 天线,体积小巧 34mm X 17mm
(7) 模块可软件设地址,只有收到本机地址时才会输出数据(提供中断指示),可直接接各种单片机使用,软件编程非常方便
(8) 内置专门稳压电路,使用各种电源包括DC/DC 22cccc开关电源均有很好的通信效果 bbzs
(9) 标准DIP间距接口,便于嵌入式应用
(10)RFModule-Quick-DEV 快速开发系统,含开发板
(11) 51系列单片机P0口连接时候,需要加10K的上拉电阻,与其余口连接不需要。
(12) 其他系列的单片机,如果是5V的,请参考该系列单片机IO口输出电流大小,如果超过10mA,需要串联电阻分压,否则容易烧毁模块! 如果是3.3V的,可以直接和RF2401模块的IO口线连接。比如AVR系列单片机如果是5V的,一般串接2K的电阻。
二、接口电路
说明:
(1) VCC脚接电压范围为 1.9V~3.6V之间,不能在这个区间之外,超过3.6V将会烧毁模块。推荐电压3.3V左右。
(2) 除电源VCC和接地端,其余脚都可以直接和普通的5V单片机IO薄鳅口直接相连,无需电平转换。当然对3V左右的单片机更加适用了。
(3) 硬件上面没有SPI的单片机也可以控制本模块,用普通单片机IO口模拟SPI不需要单片
机真正的串口介入,只需要普通的单片机IO口就可以了,当然用串口也可以了。
(4) 6脚,12脚为接地脚,需要和母板的逻辑地连接起来
(5) 排针间距为100mil,标准DIP插针,如果需要其他封装接口,比如密脚插针,或者其他形式的接口,可以定做。
三、模块结构和引脚说明
    NewMsg_RF2401模块使用Nordic公司的nRF2401A芯片开发而成。
四、工作方式
NewMsg_RF2401有工作模式有四种:
收发模式
配置模式
空闲模式
关机模式
工作模式由PWR_UP CETX_ENCS三个引脚决定,详见下表。
4.1 收发模式
收发模式有ShockBurstTM收发模式和直接收发模式两种,收发模式由器件配置字决定,
具体配置将在器件配置部分详细介绍。
4.1.1 ShockBurstTM收发模式
ShockBurstTM收发模式下,使用片内的先入先出堆栈区,数据低速从微控制器送入,但高速(1Mbps)发射,这样可以尽量节能,因此,使用低速的微控制器也能得到很高的射频数据发射速率。与射频协议相关的所有高速信号处理都在片内进行,这种做法有三大好处:尽量节能;低的系统费用(低速微处理器也能进行高速射频发射);数据在空中停留时间短,抗干扰性高。ShockBurstTM技术同时也减小了整个系统的平均工作电流。
ShockBurstTM收发模式下, NewMsg_RF2401自动处理字头和CRC校验码。在接收数据时,自动把字头和CRC校验码移去。在发送数据时,自动加上字头和CRC校验码,当发送过程完成后,DR引脚通知微处理器数据发射完毕。
4.1.1.1 ShockBurstTM发射流程
 需要用到的接口引脚为CECLK1DATA
A. 当微控制器有数据要发送时,其把CE置高,使NewMsg_RF2401工作;
B. 把接收机的地址和要发送的数据按时序送入NewMsg_RF2401
C. 微控制器把CE置低,激发NewMsg_RF2401进行ShockBurstTM发射;
D. NewMsg_RF2401ShockBurstTM发射
放血槽  (1) 给射频前端供电;
  (2)射频数据打包(加字头、CRC校验码)
  (3) 高速发射数据包;
  (4)发射完成,NewMsg_RF2401进入空闲状态。
4.1.1.2 ShockBurstTM接收流程
  需用到的接口引脚CEDR1CLK1DATA(接收通道1)
A. 配置本机地址和要接收的数据包大小;
B. 进入接收状态,把CE置高;
C. 200us后,NewMsg_RF2401进入监视状态,等待数据包的到来;
D. 当接收到正确的数据包(正确的地址和CRC校验码)NewMsg_RF2401自动把字头、地址和CRC校验位移去;
E. NewMsg_RF2401通过把DR1(这个引脚一般引起微控制器中断)置高通知微控制器;
F. 微控制器把数据从NewMsg_RF2401读出;
G. 所有数据读取完毕后,NewMsg_RF2401DR1置低,此时,如果CE为高,则等待下一个数据包,如果CE为低,开始其它工作流程。
4.1.2直接收发模式
在直接收发模式下,NewMsg_RF2401如传统的射频收发器一样工作。
4.1.2.1直接发送模式
  需要用到的接口引脚为CEDATA
A. 当微控制器有数据要发送时,把CE置高;
B. NewMsg_RF2401射频前端被激活;
C. 所有的射频协议必须在微控制器程序中进行处理 (包括字头、地址和CRC校验码)
4.1.2.2直接接收模式
  需要用到的接口引脚为CECLK1DATA
A. 一旦NewMsg_RF2401被配置为直接接收模式,DATA引脚将根据天线接收到的信号开始高低变化(由于噪声的存在)
B. CLK1引脚也开始工作;
C. 一旦接收到有效的字头,CLK1引脚和DATA引脚将协调工作,把射频数据包以其被发射时的数据从DATA引脚送给微控制器;
D. 字头必须是8位;
E. DR引脚没用上,所有的地址和CRC校验必须在微控制器内部进行。
4.2 配置模式
在配置模式,15字节的配置字被送到NewMsg_RF2401,这通过CSCLK1DATA三个引脚完成,具体的配置方法请参考本文的器件配置部分。
4.3 空闲模式
NewMsg_RF2401的空闲模式是为了减小平均工作电流而设计,其最大的优点是,实现节能的同时,缩短芯片的起动时间。在空闲模式下,部分片内晶振仍在工作,此时的工作电流跟外部晶振的频率有关,如外部晶振为4MHz时工作电流为12uA,外部晶振为16MHz时工作电流为32uA。在空闲模式下,配置字的内容保持在NewMsg_RF2401片内。
4.4 关机模式
在关机模式下,为了得到最小的工作电流,一般此时的工作电流小于1uA。关机模式下,配置字的内容也会被保持在NewMsg_RF2401片内,这是该模式与断电状态最大的区别。
五、配置NewMsg_RF2401模块
NewMsg_RF2401的所有配置工作都是通过CSCLK1DATA三个引脚完成,把其配置为ShockBurstTM收发模式需要15字节的配置字,而如把其配置为直接收发模式只需要2字节的配置字。
我们推荐NewMsg_RF2401工作于ShockBurstTM收发模式,这种工作模式下,系统的程序编制会更加简单,并且稳定性也会更高,因此,下文着重介绍把NewMsg_RF2401配置为ShockBurstTM收发模式的器件配置方法。
ShockBurstTM的配置字使NewMsg_RF2401能够处理射频协议,在配置完成后,在NewMsg_RF2401工作的过程中,只需改变其最低一个字节中的内容,以实现接收模式和发送模式之间切换。
ShockBurstTM的配置字可以分为以下四个部分:
数据宽度:声明射频数据包中数据占用的位数。这使得NewMsg_RF2401能够区分接收数据包中的数据和CRC校验码;
地址宽度:声明射频数据包中地址占用的位数。这使得NewMsg_RF2401能够区分地址和数据;
地址:接收数据的地址,有通道1的地址和通道2的地址;
CRC:使NewMsg_RF2401能够生成CRC校验码和解码。
当使用NewMsg_RF2401片内的CRC技术时,要确保在配置字中CRC校验被使能,并且发送和接收使用相同的协议。     
NewMsg_RF2401配置字的各个位的描述如下表所示。
                         NewMsg_RF2401配置字描述
在配置模式下,注意保证PWR_UP引脚为高电平,CE引脚为低电平。配置字从最高位开始,依次送入NewMsg_RF2401。在 CS引脚的下降沿,新送入的配置字开始工作。
六、参考源代码
参考源代码
/*
Email:    wenming_hu2002@yahoo
官方网址:wmsg
官方论坛:wmsg/bbs
*/
#include <reg51.h>
#define BYTE_BIT0    0x01
#define BYTE_BIT1    0x02
#define BYTE_BIT2    0x04
#define BYTE_BIT3    0x08
#define BYTE_BIT4    0x10
#define BYTE_BIT5    0x20
#define BYTE_BIT6    0x40
#define BYTE_BIT7    0x80
//<nRF2401_Pins 对应引脚>
sbit PWR_UP    = P1^6;
sbit CE        = P1^2;
//    sbit DR2    = P3^5;        //暂时没有用到
//    sbit CLK2    = P3^4;
//    sbit OUT2    = P3^3;
sbit CS        = P1^1;
sbit DR1    = P1^0;
sbit CLK1    = P3^7;
sbit DATA    = P3^3;
sbit LED0    = P3^4;
sbit LED1    = P3^5;
sbit KEY0    = P3^0;
sbit KEY1    = P3^1;
/*
*************************************************************
*    nRF2401 Configuration                                        *
*    保存2401的配置信息                                        *
*************************************************************
*/
/*=====<RF-Configuration-Register 配置信息>=====*/
//芯片测试用,无需修改
#define TEST_2        0x8E            //MSB    D143~D136
差速防坠器#define TEST_1        0x08                //        D135~D128
#define TEST_0        0x1C            //        D127~D120
/* 注意: DATAx_W + ADDRx_W + CRC 的值必须小于256 !  单个数据包的大小必须小于32字节(256) */

本文发布于:2024-09-23 08:17:21,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/307211.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:模式   配置   引脚
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议