nrf2401
nRF2401的调试心得
nRF2401 调试心得经过这几周的努力,nRF2401的原始样机调试基本完成了,指标到达了预期目标。
∙灵敏度很高,在-20dBm的发射功率下,可以达到10米左右的距离;在0dBm的功率下,可以超过40米。
∙整机平均功耗很低,平均工作电流约10uA(与工作时间的占空比有关)。
下面将介绍调试过程中遇到的一些问题和解决过程,希望这些可以对初学者有所帮助。
因为这是目前正在开发的一个系统,所以代码和原理图就不能公布了,这里只描述一些调试过程中的关键点,这应当也足够了。
开发环境:AVR Studio + WinAVR + SLISP硬件环境:ATmega88V + AVR Dragon + 自制并口下载线先调试发射部分(因为以前有一套用nRF24E1做的系统,但是功耗太大,没有实用化,但是正好可以用来调试),nRF2401的数据手册很简洁,很快就看完了。
但是它只有C51的例程,没有其他单片机的。
开始以为移植起来很容易,就直接写程序了。
结果运行后,没有任何效果,就是说发出的数据不对。
仔细对照C51的例子程序,没有发现有什么区别啊。
最后检查,逐步缩小范围,感觉问题可能在SPI部分。
AVR的SPI支持4种工作模式,区别在于时钟和数据的时序不同,习惯上使用方式0的最多,而我当时随便选了方式3,修改了SPI的工作模式就正常了。
发射部分可以工作了,但是新做的接收部分收不到数据。
而接收部分和发射部分的电路基本相同的,只有部分地方不一致。
将发射的程序写入到接收板,可以正常发出,说明电路没有问题,还是程序有问题。
反复对比C51的程序,终于发现是没有将CE设置为高引起的。
因为这个接收程序是从发射程序修改而来的,而发射程序只是定时发射一下,然后就进入Stand by状态,平时将CE和CS都置低了。
从这里还发现nRF2401的控制和一般芯片不同,一般芯片习惯上是高电平无效,低电平使能,nRF2401是相反的,比较容易造成习惯性错误。
nRF905 vs nRF2401A vs nRF24L01无线数传模块之间的区别
nRF905 vs nRF2401A vs nRF24L01+ 无线数传模块之间的区别1.器件简介1.1 nRF905nRF905是工作在433MHz、868MHz和915MHz频段的GFSK调制模式的无线数传芯片,最高发射功率可达+10dBm,接收灵敏度为-100dBm,支持512个通讯频率。
使用ShockBurst™传输模式,数据在空中的传输速率为50kbps。
使用SPI接口与MCU完成数据通讯与通讯控制等功能。
1.2 nRF2401AnRF2401A为nRF2401的改进型号(nRF2401AG为无铅工艺型号)。
nRF2401A工作在2.4GHz 的国际通用ISM免申请频段GFSK调制的无线数传芯片。
最高发射功率0dBm,接收灵敏度-90dBm,支持124个接收频率与126个发射频率。
使用ShockBurst™传输模式,具备两个独立的数据接收通道。
支持250kbps和1Mbps的空中数据速率。
使用SPI接口与MCU完成数据通讯与通讯控制等功能。
1.3 nRF24L01nRF24L01是工作在2.4GHz的国际通用ISM免申请频段GFSK调制的无线数传芯片。
最高发射功率0dBm,接收灵敏度为-85dBm,支持125个通讯频率。
使用增强型的Enhanced ShockBurst™传输模式,支持6个数据通道(共用FIFO)。
支持1Mbps和2Mbps的空中数据传输速率。
使用SPI接口与MCU完成数据通讯与通讯控制等功能。
1.4 nRF24L01+nRF24L01+(nRF24L01P)是nRF24L01的改进型号,具有与nRF24L01相同的无线特性与操作方式,同时增加了250kbps的空中速率支持。
2.使用事项2.1 兼容性nRF2401A、nRF24L01和nRF24L01+之间是可以完成相互通讯的。
前提是,它们必须在配置的过程中使用相同的通讯频率、空中传输速率、地址长度、地址信息、数据长度和CRC校验方式。
nRF2401无线通信数据传输可靠性技术应用
接收端收到每个编码后,按式(1) (2)和(3)计算出校正 子和对应位做比对,如值非零,则表明存在错码情况,查表1判断出 相应错误位。 具体应用中, 可先取一字节数据分两部分传输,取数据信息 的低四位, 用汉明码对其进行编码,根据数据位由监督关系计算 监督位,我们用a3 a2 a1 a0表示数据的低四位,h2 h1 h0分别表 示相应的校验,这样对应的有七位数据,为了让其以字节的方式传 输,需补充一位数据,现在我们以K表示补充位。 实际传输中按a3 a2 a1 a0 h2 h1 h0 k (最低位补k) 设置编码;在解码端接) 、 (2) 和 (3) 计算校正子s1 、 s2 和s3
2 基于传输速率切换的控制
nRF2401 支持两种速率 1Mbps 和 250kbps,因此可以在两种 速率之间进行切换。1Mbps 速率下,抗干扰能力强,但传输距离 近,在较大距离下容易丢包;250Kbps速率下,抗干扰能力弱,容易 受干扰,传输距离远
[1 ]
图 1 nRF2401 基于速率切换流程图 首先发送接收双方均以 1Mbps 的传输速率配置 nRF2401 芯 片,并同样配置一个试验包。 首先发送方发送试验包后,接收端接 收,验证副本并以此判读误码和丢包率K1 (初始值为0) ,并判读 是否小于系统规定的门限 (这里的门限指系统所能允许的误码率
3 nRF2401 信道转换控制
nRF2401 具有双通道,信道一既可以发送和接收数据,信道 二只具有接收数据的功能, 并且信道二默认频率比信道一高 8MHZ。 无线传输过程中,可能会因为通道的原因造成误码或丢包 的现象产生,针对这一故障,可以在程序设计的时候,选择频道切 换的方式,解决针对通道的干扰。 同样,接收双方预先配置一个相同的试验包,发送方发送试验 包后,接收方接收试验包,并验证试验包副本以此判读误码和丢包 率 K1 (K1 初始值为 0) ,小于系统传输所要求的门限 N (这里的门
nrf2401中文资料_数据手册_参数
2.4GHz射频收发芯片nRF2401应用电路图 器件配置
2.4GHz射频收发芯片nRF2401应用电路图器件配置1. 引言nRF2401是单片射频收发芯片,工作于2.4~2.5GHz ISM频段,芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,输出功率和通信频道可通过程序进行配置。
芯片能耗非常低,以-5dBm的功率发射时,工作电流只有10.5mA,接收时工作电流只有18mA,多种低功率工作模式,节能设计更方便。
其DuoCeiverTM技术使nRF2401可以使用同一天线,同时接收两个不同频道的数据。
nRF2401适用于多种无线通信的场合,如无线数据传输系统、无线鼠标、遥控开锁、遥控玩具等。
2. 芯片结构、引脚说明2.1 芯片结构nRF2401内置地址解码器、先入先出堆栈区、解调处理器、时钟处理器、GFSK滤波器、低噪声放大器、频率合成器,功率放大器等功能模块,需要很少的外围元件,因此使用起来非常方便。
QFN24引脚封装,外形尺寸只有5×5mm。
nRF2401的功能模块如图1所示。
图2nRF2401引脚图2.2 引脚说明表1:nRF2401引脚(附:此处引脚11和12有误。
2006.6.30)3. 工作模式nRF2401有工作模式有四种:收发模式、配置模式、空闲模式和关机模式。
nRF2401的工作模式由PWR_UP 、CE、TX_EN和CS三个引脚决定,详见表2。
表2:nRF2401工作模式3.1 收发模式nRF2401的收发模式有ShockBurstTM收发模式和直接收发模式两种,收发模式由器件配置字决定,具体配置将在器件配置部分详细介绍。
3.1.1 ShockBurstTM收发模式ShockBurstTM收发模式下,使用片内的先入先出堆栈区,数据低速从微控制器送入,但高速(1Mbps)发射,这样可以尽量节能,因此,使用低速的微控制器也能得到很高的射频数据发射速率。
与射频协议相关的所有高速信号处理都在片内进行,这种做法有三大好处:尽量节能;低的系统费用(低速微处理器也能进行高速射频发射);数据在空中停留时间短,抗干扰性高。
nRF2401的原理及应用
单片2.4GHz无线收发一体芯片nRF2401及其应用nRF2401是挪威Nordic公司推出的单片2.4GHz无线收发一体芯片。
它将射频、8051MCU、9通道12位ADC、外围元件、电感和滤波器全部集成到单芯片中,并采用2.4GHz频带和0.18μm工艺,可提供ShockBurst、DuoCeiver、片上CRC以及地址计算编码等功能。
文章详细介绍了nRF2401的结构特点、引脚功能和工作原理,给出了它的典型应用电路。
nRF2401无线收发一体芯片和蓝牙一样,都工作在2.4GHz自由频段,能够在全球无线市场畅通无阻.nRF2401支持多点间通信,最高传输速率超过1Mbit/S,而且比蓝牙具有更高的传输速度.它采用SoC方法设计,只需少量外围元件便可组成射频收发电路.与蓝牙不同的是,nRF2401没有复杂的通信协议,它完全对用户透明,同种产品之间可以自由通信.更重要的是,nRF2401比蓝牙产品更便宜.所以nRF2401是业界体积最小、功耗最少、外围元件最少的低成本射频系统级芯片.2 主要特点和引脚功能nRF2401的引脚排列如图1(顶视图)所示.它采用5mm×5mm的24引脚QFN封装.nRF2401的主要特点如下:●采用全球开放的2.4GHz频段,有125个频道,可满足多频及跳频需要;●速率(1Mbps)高于蓝牙,且具有高数据吞吐量;●外围元件极少,只需一个晶振和一个电阻即可设计射频电路;●发射功率和工作频率等所有工作参数可全部通过软件设置;●电源电压范围为1.9~3.6V,功耗很低;●电流消耗很小,-5dBm输出功率时的典型峰值电流为10.5mA;●芯片内部设置有专门的稳压电路,因此,使用任何电源(包括DC/DC开关电源)均有很好的通信效果;●每个芯片均可以通过软件设置最多40bit地址,而且只有收到本机地址时才会输出数据(提供一个中断指示),同时编程也很方便;●内置CRC纠检错硬件电路和协议;●采用DuoCeiver技术可同时接收两个nRF2401的数据;●采用ShockBurstTM模式时,能适用极低的功率操作和不严格的MCU执行;●带有集成增强型8051内核、9路10bitADC、UART异步串口、SPI串口和PWM输出;●内置看门狗;●无需外部SAW滤波器;●可100%RF检验;●带有数据时隙和数据时钟恢复功能.3 工作原理nRF2401的内部结构原理及外部组成框图如图2所示,下面介绍其工作原理.3.1 ShockBurstTM模式nRF2401的ShockBurstTM RX/TX模式采用片上先进先出(FIFO)来进行低数据率的时钟同步和高数据率的传输,因此极大的降低了功耗.ShockBurstTM发射主要通过MCU接口引脚CE、CLK1和DATA来完成.当MCU请求发送数据时,置CE为高电平,此时的接收机地址和有效载荷数据作为nRF2401的内部时钟,可用请求协议或MCU将速率调至1Mbps;置CE为低电平可激活ShockBurstTM发射.ShockBurstTM接收主要使用MCU接口引脚CE、DR1、CLK1和DATA来实现.当正确设置射频包输入载荷的地址和大小后,置CE为高电平可激活RX.此后便可在nRF2401监测信息输入200μs,若收到有效数据包,则给MCU一个中断并置DR1为高电平,以使MCU 以时钟形式输出有效载荷数据,待系统收到全部数据后nRF2401再置DR1为低此时如果CE保持高电平,则等待新的数据包.若CE置低电平,则开始接收新的序列.3.2 DuoCeiverTM的双信道接收模式nRF2401的DuoCeiverTM技术为RX提供了两个独立的专用数字信道,因而可代替两个单独接收系统.图3所示是DuoCeiverTM同时双接收信道结构图.nRF2401 可以通过一个天线接口从相隔8MHz的两个1Mbps接收机上接收数据.同时将两个数字信道的输出反馈到两个单独的MCU接口.具体的两个信道如下:数字信道1:CLK1,DATA,DR1;数字信道2:CLK2,DOUT2,DR2;应当说明的是,数字信道2的频率只有在比数字信道1的频率高出8MHz时,才能保证正常接收.4 典型应用nRF2401的电源电压范围为1.9~3.6V,可工作在-40~+85℃的温度范围内.灵敏度为-90dbm.图4是nRF2401的一个典型应用电路.该电路由50V陶瓷电容器(C1~C9)、nRF2401无线电收发器(U1)以及一个晶振组成,由图可见,该电路外围元件很少.。
nrf2401引脚定义
nrf2401引脚定义nRF2401是一款低功耗无线收发器,广泛应用于无线通信领域。
它具有丰富的引脚定义,下面将逐一介绍这些引脚的功能和用途。
1. VCC:这个引脚用于连接芯片的电源正极,通常连接到3.3V电源引脚上。
2. GND:这个引脚用于连接芯片的地,通常连接到电源的负极或地线上。
3. CE(Chip Enable):这个引脚用于使能或禁用芯片,控制芯片的工作状态。
当CE为高电平时,芯片处于工作状态;当CE为低电平时,芯片处于停止工作状态。
4. CSN(Chip Select Not):这个引脚用于选择芯片,控制芯片与其他设备之间的通信。
当CSN为低电平时,芯片处于选中状态;当CSN为高电平时,芯片处于非选中状态。
5. SCK(Serial Clock):这个引脚用于控制数据的传输速度,通过时钟信号同步数据传输。
6. MOSI(Master Out Slave In):这个引脚用于从主设备向从设备传输数据。
7. MISO(Master In Slave Out):这个引脚用于从从设备向主设备传输数据。
8. IRQ(Interrupt Request):这个引脚用于检测中断请求,当芯片有中断事件发生时,IRQ引脚会产生相应的信号。
通过对nRF2401芯片的引脚定义的了解,我们可以看出,这些引脚在芯片的工作中起到了关键的作用。
通过合理地使用这些引脚,我们可以实现无线通信的功能。
同时,我们还可以根据具体的需求,选择合适的引脚来连接其他外部设备,实现更多的功能扩展。
总结起来,nRF2401的引脚定义为VCC、GND、CE、CSN、SCK、MOSI、MISO和IRQ。
每个引脚都有自己的功能和用途,在设计应用时需要根据具体的需求进行合理的配置和连接。
通过充分理解和利用这些引脚,我们可以实现丰富多样的无线通信功能。
nrf2401编程指南
说明 MCU 通过 MOSI 输出数据 同时通过 CLK1 送出 SPI 时钟信号 从 MISO 读入数据 有两个 10K 电阻隔离 MOSI 送出的数据不会影响 nRF2401 输出的数据
因为图中
软件编程 流程与上面 I/O 直接连接方式相同 读写 nRF2401 子程序
下面给出带 51 内核的 P89LPC913 单片机的 SPI 读写子程序 供参考 /********************************************************/ 名 称 Spi_Init 功 能 P89LPC913 单片机 SPI 接口初始化 C 语言子程序 入口参数 无 出口参数 无 影响资源 无 /********************************************************/ sfr SPSTAT = 0xE1; sfr SPCTL = 0xE2; sfr SPDAT = 0xE3; sfr IEN1 = 0xE8; sbit ESPI = IEN1^3 ; void Spi_Init(void) { SPCTL =0xd1; //bit7 :SSIG =1 忽略 SS 信号 // bit6 :SPEN=1 ,允许 SPI //bit5 :DROD=0 高位在前 //bit4 :MASTER =1 主模式 //bit3 :CPOL=0 , SPI_CLK 空闲时为低电平 //bit2 :CPHA =0 , 前时钟上升沿驱动输出及采样方式 //bit1~0 :01 CCLK/16 SPI 时钟频率 1MHz max
COPYRIGHT ©2005 ALL RIGHTS RESERVED 迅通科技
TEL: (010)64390486
http://:
nRF2401的原理及应用
单片2.4GHz无线收发一体芯片nRF2401及其应用nRF2401是挪威Nordic公司推出的单片2.4GHz无线收发一体芯片。
它将射频、8051MCU、9通道12位ADC、外围元件、电感和滤波器全部集成到单芯片中,并采用2.4GHz频带和0.18μm工艺,可提供ShockBurst、DuoCeiver、片上CRC以及地址计算编码等功能。
文章详细介绍了nRF2401的结构特点、引脚功能和工作原理,给出了它的典型应用电路。
nRF2401无线收发一体芯片和蓝牙一样,都工作在2.4GHz自由频段,能够在全球无线市场畅通无阻.nRF2401支持多点间通信,最高传输速率超过1Mbit/S,而且比蓝牙具有更高的传输速度.它采用SoC方法设计,只需少量外围元件便可组成射频收发电路.与蓝牙不同的是,nRF2401没有复杂的通信协议,它完全对用户透明,同种产品之间可以自由通信.更重要的是,nRF2401比蓝牙产品更便宜.所以nRF2401是业界体积最小、功耗最少、外围元件最少的低成本射频系统级芯片.2 主要特点和引脚功能nRF2401的引脚排列如图1(顶视图)所示.它采用5mm×5mm的24引脚QFN封装.nRF2401的主要特点如下:●采用全球开放的2.4GHz频段,有125个频道,可满足多频及跳频需要;●速率(1Mbps)高于蓝牙,且具有高数据吞吐量;●外围元件极少,只需一个晶振和一个电阻即可设计射频电路;●发射功率和工作频率等所有工作参数可全部通过软件设置;●电源电压范围为1.9~3.6V,功耗很低;●电流消耗很小,-5dBm输出功率时的典型峰值电流为10.5mA;●芯片内部设置有专门的稳压电路,因此,使用任何电源(包括DC/DC开关电源)均有很好的通信效果;●每个芯片均可以通过软件设置最多40bit地址,而且只有收到本机地址时才会输出数据(提供一个中断指示),同时编程也很方便;●内置CRC纠检错硬件电路和协议;●采用DuoCeiver技术可同时接收两个nRF2401的数据;●采用ShockBurstTM模式时,能适用极低的功率操作和不严格的MCU执行;●带有集成增强型8051内核、9路10bitADC、UART异步串口、SPI串口和PWM输出;●内置看门狗;●无需外部SAW滤波器;●可100%RF检验;●带有数据时隙和数据时钟恢复功能.3 工作原理nRF2401的内部结构原理及外部组成框图如图2所示,下面介绍其工作原理.3.1 ShockBurstTM模式nRF2401的ShockBurstTM RX/TX模式采用片上先进先出(FIFO)来进行低数据率的时钟同步和高数据率的传输,因此极大的降低了功耗.ShockBurstTM发射主要通过MCU接口引脚CE、CLK1和DATA来完成.当MCU请求发送数据时,置CE为高电平,此时的接收机地址和有效载荷数据作为nRF2401的内部时钟,可用请求协议或MCU将速率调至1Mbps;置CE为低电平可激活ShockBurstTM发射.ShockBurstTM接收主要使用MCU接口引脚CE、DR1、CLK1和DATA来实现.当正确设置射频包输入载荷的地址和大小后,置CE为高电平可激活RX.此后便可在nRF2401监测信息输入200μs,若收到有效数据包,则给MCU一个中断并置DR1为高电平,以使MCU 以时钟形式输出有效载荷数据,待系统收到全部数据后nRF2401再置DR1为低此时如果CE保持高电平,则等待新的数据包.若CE置低电平,则开始接收新的序列.3.2 DuoCeiverTM的双信道接收模式nRF2401的DuoCeiverTM技术为RX提供了两个独立的专用数字信道,因而可代替两个单独接收系统.图3所示是DuoCeiverTM同时双接收信道结构图.nRF2401 可以通过一个天线接口从相隔8MHz的两个1Mbps接收机上接收数据.同时将两个数字信道的输出反馈到两个单独的MCU接口.具体的两个信道如下:数字信道1:CLK1,DATA,DR1;数字信道2:CLK2,DOUT2,DR2;应当说明的是,数字信道2的频率只有在比数字信道1的频率高出8MHz时,才能保证正常接收.4 典型应用nRF2401的电源电压范围为1.9~3.6V,可工作在-40~+85℃的温度范围内.灵敏度为-90dbm.图4是nRF2401的一个典型应用电路.该电路由50V陶瓷电容器(C1~C9)、nRF2401无线电收发器(U1)以及一个晶振组成,由图可见,该电路外围元件很少.。
芯片nRF2401介绍
业界体积最小、功耗最少、外围元件最少的
2.4GHz无线单片收发芯片nRF2401
♦全球开放的2.4GHz频段,125个频道,满足多频及跳频需要
♦高速率1Mbps,高于蓝牙,具有高数据吞吐量
♦极少的外围元件,只需一个晶振和一个电阻
♦发射功率、工作频率等所有工作参数全部通过软件设置完成
♦ 1.9~3.6V低功耗,满足低功耗设计需要
♦独特设计:芯片内部设置了专门的稳压电路,使用各种电源包括DC/DC开关电源均有很好的通信效果
♦独特设计:每个芯片可以通过软件设置最多40bit地址,只有收到本机地址时才会输出数据(提供一个中断指示),编程很方便
独特设计:纠检错是无线通信设计的难点,nRF2401内置了CRC纠检错硬件电路和协议,对于软♦
件开发人员太方便了。
♦独特设计:nRF2401的DuoCeiver技术可以同时接收两个nRF2401的数据。
♦广泛适用于手持终端PDA、无线耳机、数字视频、无线鼠标、无线键盘以及其他短距离高速无线应用♦nRF2401-Quick-DEV快速开发系统,含开发板、源代码、原理图等详细资料
♦nRF2401-Quick-Kit快速开发套件,含各芯片和主要配套器件,方便开发
♦可供即插即用的嵌入式2.4Ghz无线模块,提供领先的2.4GHz无线光电鼠标,2.4G无线键盘参考设计。
NRF2401+模块说明书
答:一款原产台湾,一款原产品挪威,随着众多 IC 晶圆厂自己无线 IC 的 推出,兼容模块的价格从 2008 年的 20 元左右一直跌落到目前的 4.5,利润由当 初的 10 元降到现在的 0.5 元以下,其中挪威版的出的最早,价格虽然猛降,但 是始终拼不过台产芯片。
时也减小了整个系统的平均工作电流。 在 Enhanced ShockBurstTM 收发模式下, NRF24L01 自动处理字头 和 CRC 校验码。在接收数据时,自动把字头和 CRC 校验码移去。在送 数据时,自动加上字头和 CRC 校验码,在发送模式下,置 CE 为高,至 少 10us,将时发送过程完成后。 4.1.1.1 Enhanced ShockBurstTM 发射流程 A. 把接收机的地址和要发送的数据按时序送入 NRF24L01; B. 配置 CONFIG 寄存器,使之进入发送模式。C. 微控制器把 CE 置高 (至少 10us),激 发 NRF24L01 进行 Enhanced ShockBurstTM 发射; D. N24L01 的 Enhanced ShockBurstTM 发射(1) 给射频前端供电; (2) 射频数据打包(加字头、CRC 校验码); (3) 高速发射数据包; (4) 发射完成,NRF24L01 进入空闲状态。4.1.1.2 Enhanced ShockBurstTM 接收流程 A. 配置本机地址和要接收的数据包大小;B. 配置 CONFIG 寄存器,使之进入接收模式,把 CE 置高。 C. 130us 后,NRF24L01 进入监视状态,等待数据包的到来; D.收到 正确的数据包(正确的地址和 CRC 校验码),NRF2401 自动把字头、地址
NRF2401 模块说明书介绍
常见问题解答1 问:2.4G模块的距离有多远?答:空旷距离下内置PCB天线比如我们的NF-02 NF-03 系列,最远无障碍在240米处还能收到信号。
但是有遮挡的情况比较难说,还有附近的WIFI干扰也会严重影响传输距离,因此我们的+7DB输出功率,若做遥控用,空旷距离最好距离在200米左右。
2 问:同样的NF-03为什么有两种价格,一款4.5的一款6.5?答:一款原产台湾,一款原产品挪威,随着众多IC晶圆厂自己无线IC的推出,兼容模块的价格从2008年的20元左右一直跌落到目前的4.5,利润由当初的10元降到现在的0.5元以下,其中挪威版的出的最早,价格虽然猛降,但是始终拼不过台产芯片。
3问:挪威版本的NRF24L01+和台产版的哪个使用效果会更好?答:台产版的完全克隆挪威版的,并在以前的基础上加了+7DB的功放电路,使之距离上是挪威版本的2倍还多。
4 问:挪威版最大可编程发射功率是0DBM 台产版的是+7DBM。
是个什么概念??答:每增加+3DBM 发射功率增加一倍,+7DB M就是0DBM发射功率的四倍。
在最大发射功率下,台产版的电流在40MA 左右。
挪威版在0DB时12MA左右5 问:同问题4,那是否说明台产版的比挪威版的耗电???答:在同样发射功率下,功耗一样,比如在0DBM下,电流都是12MA。
6 问内置PCB天线和外置鞭状天线,效果对比如何?答:发射功率基本相当,但是实地测试空旷距离,外置天线距离比PCB天线远25%-30%左右。
7 问:我想用来传输语音或图像信号可以吗?答:这个传输的是数字信号,要传输语音和图像信号也可以完成,只是要先进行数模转化,数据压缩算法,以及出错重传,防碰撞处理和时效性问题,是个不小的工程!8 你们公司的两大类型无线产品SI4432模块和NRF24L01模块我选哪一个好?答:先从关注的传输距离上说,SI4432是一款相当不错的芯片,内置—+20DBM功放,可谓是所有315M-433M中最强悍的一款,距离上再1200波特率下,能传输1公里左右,在家居安防与小区组网上非常有用,NRF24L01+外置功放的情况下距离和SI4432相当,但穿透性和绕射性能比SI4432差,与SI4432比较最大的优点是:传输速率比较快,最大能到2M适合传输大批量数据,要求或者持续时间比较短的应用。
(word完整版)NRF2401使用详解
基于NRF2401和MSP430F149实现无线通信一、实验目的:1、掌握无线通信模块NRF2401的使用方法,学会用此模块实现数据传输;2、进一步了解MSP430F149单片机的编程语言和环境.二、实验功能:本实验完成无线通信功能,具体是通过NRF2401实现一个发送数据一个接受数据,发送端实现0~99循环发送,接收端接受数据并显示在数码管上。
注意:由于NRF2401价格不菲且易坏,所以将此模块插入到最小系统板上的插槽时应注意师父查反,正确的方向是天线端向外,且插拔时一定要断电.三、实验原理:NRF2401是单片射频收发一体芯片,工作于2.4—2。
5GHz ISM频段,适用于多种无线通信场合,如无线遥控器、无线鼠标等,且传输数据稳定,这种无线通信解决方案适合传输距离较近的无线控制项目,它只需要和处理器配合使用便能实现可靠的数据传递。
下面详细介绍如何运用MSP430单片机控制NRF2401完成无线通信。
1、RT2411模块按照设计流程,应该是根据NRF2401的datasheet搭建硬件电路,但是为了使用方便,我们使用了模块电路RT2411,RT2411是NRF2401的典型应用电路(如图1所示),使用此模块电路的好处是我们只需要将各个引脚连到单片机对应管脚,配合正确的程序就可实现无线通信功能。
相关的两个文档是《NRF2401A..pdf》和《RT2411使用手册》,尤其要注意RT2411模块价格昂贵且容易损坏,使用前一定要认真阅读《RT2411使用手册》第二页的五个注意事项,要尽量避免由于使用不当造成芯片损坏。
图1. RT2411模块实物图(左)和原理图(右)2、实验说明和硬件连接我们将做一个简单实验,由发送机连续循环发送数字1—99,接收机接收数据并将其显示到数码管上,这样可以看到实验效果:接收机数码管上循环显示数值1-99。
发送机和接收机都是由一块MSP430F149最小系统板和一个RT2411模块组成,共需两套MSP430F149最小系统板和两个RT2411模块。
Nrf2401 datasheet 数据手册 中文资料
3 在接收模式下 当接收到与本机地址一致是 通过 DR1 输出中断指示 高有效 单片机通过 DATA CLK1 接收数据
3 通道 2 接口 通道 2 接口 CLK2 DOUT2 DR2 为三线数据接口 在 PTR4000 模块中保留未使用
五 PTR4000 的配置 PTR4000 上电以后首先必须通过单片机对其进行配置 单片机首先将按照模式控制真值表 表 4
1 在配置模式下 单片机通过通道 1 的 DATA CLK1 线配置 PTR4000 的工作参数 2 在发射模式下 单片机通过通道 1 的 DATA CLK1 发送数据
COPYRIGHT ©2003 ALL RIGHTS RESERVED 迅通科技 TEL: 0451 86349363 E-mail: sales@ 2
六 PTR4000 的软件编程 1 配置编程
1 上电以后 MCU 首先配置 PTR4000 模块 先将 CS CE 设为配置模式 见表 4 1 MCU 通 过 CLK1 DATA 将配置数据移入 PTR4000 模块 CLK1 由 MCU 提供 MSB 首先移入
2 全部配置 120 bit 配置数据均移入后 由 MCU 将 CS CE 设为工作模式 此时 PTR4000 将刷 新内部配置并使得新配置立即生效 在掉电和待机模式工作后 配置内容仍然有效 配置数据 只有当电源撤除后才会丢失
1 编程配置接口
该接口由 CE CS PWR 组成 控制 PTR4000 的四种工作模式 配置模式 发射/接收模式 待机模
式 Power down 掉电模式 配置数据由 DATA CLK1 输入 各种模式的控制模式见下表 4 1
模式
PWR
CE
CS
工作模式 发射/接收
nrf2401
nrf2401介绍nrf2401是一款低功耗无线通信模块,采用2.4GHz频段进行通信。
该模块非常适用于需要远距离无线通信的应用,如物联网设备、无线传感器网络、遥控器等。
特性• 2.4GHz全向射频模块•内置射频前端和调制解调器•最大传输距离可达100米•工作频率范围为2.400-2.525GHz•最大发射功率为0dBm•支持多通道通信•低功耗设计,适合电池供电设备•强大的抗干扰能力•简单易用的SPI接口硬件规格•工作电压:3.3V•工作温度范围:-40°C 到 +85°C•尺寸:15mm x 29mm连接方式nrf2401模块采用SPI接口进行与主控芯片的通信。
需要连接如下几个引脚:•MOSI:主控芯片的SPI信号输出引脚•MISO:主控芯片的SPI信号输入引脚•SCK:主控芯片的SPI时钟引脚•CSN:片选引脚,用于使能模块•CE:片选引脚,用于控制模块的工作模式应用示例以下是一个基本的nrf2401模块应用示例:```c #include <SPI.h>// 定义连接nrf2401模块的引脚 #define MOSI 11 #define MISO 12 #define SCK 13 #define CSN 10 #define CE 9void setup() { SPI.begin(); SPI.setDataMode(SPI_MODE0); SPI.setClockDivider(SPI_CLOCK_DIV4);pinMode(CSN, OUTPUT); digitalWrite(CSN, HIGH);pinMode(CE, OUTPUT); digitalWrite(CE, LOW); }void loop() { // 选择通信通道 selectChannel(2);// 发送数据 sendData(。
nrf2401
在短距离的通信中,无线技术被普遍看好,其中射频技术因其功耗低和无方向性等优点而受到青睐。
通信频率为2.4GHz的频段是全球开放的ISM(工业、科学和医学)频段,人们无需申请许可证即可使用,给开发者和用户带来了很大方便;同时,该频率又可以有效地避免低频段信号、各类电火花以及家用电器等的干扰。
由于这一频段具有的优点,其他的一些应用,例如蓝牙(BlueTooth)、无线局域网(WLAN)也在这一频段;但蓝牙和无线局域网对于工业控制、医疗传感器、智能自动化装置等设备来说,过于复杂,其成本也过高,很难满足快速开发和低成本的要求。
因此,目前迫切需要一种低成本、低功耗、能够快速开发应用的方案,实现设备的无线连接。
本文结合无线片上系统NRF24El芯片的具体系统开发实例,研究一种无线组网技术。
1 无线片上系统NRF24E1NRF24E1 是一种工作频率可达到2.4GHz的无线射频收发芯片。
内部嵌有与8051 兼容的微处理器和10位9路A/D转换器,可以在 1.9~3.6V电压下稳定工作。
其内部还有电压调整器和VDD电压监视,通道转换时间小于200微秒,数据速率1Mbps,不需要外接SAW 滤波器。
NRF24E1是目前首次推出的全球2.4GHz通用的、完整低成本射频系统级芯片。
无线收发部分有与nRF2401同样的功能。
该功能由外部并行口和外部SPI 启动,每一个待发信号对于处理器来讲都可以作为中断来编程,或者通过GPIO端口实现。
NRF24E1是一个可以在全球公用的频段范围(2.4~2.5 GHz)内实现无线通信的芯片。
收发机包含 1 个完全集成的分频器、放大器、调节器和 2 个收发单元。
输出能量、频段等射频参数,可通过射频寄存器方便地编程调节。
在发送模式下,电流消耗只有10.5mA;在接收模式下,只有18mA,所以功耗相当低。
图1是NRF24E1芯片示意图。
从图中看到,NRF24E1由一个8051微控制器内核和一个NRF2401 无线收发器组成,芯片包括:增强型8051 内核、无线收发器NRF2401、9路100ksps的10位模数转换器、UART 异步串口、SPI 接口、PWM 输出、RC振荡器、看门狗和唤醒定时器以及内置的专用稳压电路等。
nrf2401
nRF2401是单片射频收发芯片,工作于2.4~2.5GHz ISM频段,芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,输出功率和通信频道可通过程序进行配置。
芯片能耗非常低,以-5dBm的功率发射时,工作电流只有10.5mA,接收时工作电流只有18mA,多种低功率工作模式,节能设计更方便。
其DuoCeiverTM技术使nRF2401可以使用同一天线,同时接收两个不同频道的数据。
nRF2401适用于多种无线通信的场合,如无线数据传输系统、无线鼠标、遥控开锁、遥控玩具等。
目录芯片结构工作模式收发模式器件配置展开编辑本段芯片结构nRF2401内置地址解码器、先入先出堆栈区、解调处理器、时钟处理器、GFSK滤波器、低噪声放大器、频率合成器,功率放大器等功能模块,需要很少的外围元件,因此使用起来非常方便。
QFN24引脚封装,外形尺寸只有5×5mm。
编辑本段工作模式nRF2401有工作模式有四种:收发模式、配置模式、空闲模式和关机模式。
nRF2401的工作模式由PWR_UP 、CE、TX_EN和CS三个引脚决定。
编辑本段收发模式nRF2401的收发模式有ShockBurstTM收发模式和直接收发模式两种,收发模式由器件配置字决定,具体配置将在器件配置部分详细介绍。
ShockBurstTM收发模式ShockBurstTM收发模式下,使用片内的先入先出堆栈区,数据低速从微控制器送入,但高速(1Mbps)发射,这样可以尽量节能,因此,使用低速的微控制器也能得到很高的射频数据发射速率。
与射频协议相关的所有高速信号处理都在片内进行,这种做法有三大好处:尽量节能;低的系统费用(低速微处理器也能进行高速射频发射);数据在空中停留时间短,抗干扰性高。
nRF2401的ShockBurstTM技术同时也减小了整个系统的平均工作电流。
在ShockBurstTM收发模式下,nRF2401自动处理字头和CRC校验码。
nrf2401
4.1收发模式
收发模式有Enhanced ShockBurstTM收发模式、ShockBurstTM收发模式和直接收发模式三种,收发模式由器件配置字决定,具体配置将在器件配置部分详细介绍。
4.1.1 Enhanced ShockBurstTM收发模式
Enhanced ShockBurstTM收发模式下,使用片内的先入先出堆栈区,数据低速从微控制器送入,但高速(1Mbps)发射,这样可以尽量节能,因此,使用低速的微控制器也能得到很高的射频数据发射速率。与射频协议相关的所有高速信号处理都在片内进行,这种做法有三大好处:尽量节能;低的系统费用(低速微处理器也能进行高速射频发射);数据在空中停留时间短,抗干扰性高。Enhanced ShockBurstTM技术同时也减小了整个系统的平均工作电流。
(6)内置2.4Ghz天线,体积小巧15mmX29mm
(7)模块可软件设地址,只有收到本机地址时才会输出数据(提供中断指示),可直接接各种单片机使用,软件编程非常方便
(8)内置专门稳压电路,使用各种电源包括DC/DC开关电源均有很好的通信效果
(9)1.27MM间距接口,贴片封装
(10)工作于Enhanced ShockBurst具有Automatic packethandling, Auto packet transaction handling,具有可选的内置包应答机制,极大的降低丢包率。
发射完成,NRF24L01进入空闲状态。4.1.1.2 Enhanced ShockBurstTM接收流程A.配置本机地址和要接收的数据包大小;B.配置CONFIG寄存器,使之进入接收模式,把CE置高。
C. 130us后,NRF24L01进入监视状态,等待数据包的到来;D.当接收到正确的数据包(正确的地址和CRC校验码),NRF2401自动把字头、地址和CRC校验位移去;E. NRF24L01通过把STATUS寄存器的RX_DR置位(STATUS一般引起微控制器中断)通知微控制器;F.微控制器把数据从NewMsg_RF2401读出;G.所有数据读取完毕后,可以清除STATUS寄存器。NRF2401可以进入四种主要的模式之一。
nrf2401模块管脚图
NRF2401模块管脚图文案B 添加义项文案,的职位,多存在于广告公司,企业宣传,新闻策划等。
基本信息中文名称文案外文名称Copy目录1发展历程2主要工作3分类构成4基本要求5工作范围6文案写法7实际应用折叠编辑本段发展历程汉字"文案"(wén àn)是指古代官衙中掌管档案、负责起草文书的幕友,亦指官署中的公文、书信等;在现代,文案的称呼主要用在商业领域,其意义与中国古代所说的文案是有区别的。
在中国古代,文案亦作" 文按"。
公文案卷。
《北堂书钞》卷六八引《汉杂事》:"先是公府掾多不视事,但以文案为务。
"《晋书·桓温传》:"机务不可停废,常行文按宜为限日。
" 唐戴叔伦《答崔载华》诗:"文案日成堆,愁眉拽不开。
"《资治通鉴·晋孝武帝太元十四年》:"诸曹皆得良吏以掌文按。
"《花月痕》第五一回:" 荷生觉得自己是替他掌文案。
"旧时衙门里草拟文牍、掌管档案的幕僚,其地位比一般属吏高。
《老残游记》第四回:"像你老这样抚台央出文案老爷来请进去谈谈,这面子有多大!"夏衍《秋瑾传》序幕:"将这阮财富带回衙门去,要文案给他补一份状子。
"文案音译文案英文:copywriter、copy、copywriting文案拼音:wén àn现代文案的概念:文案来源于广告行业,是"广告文案"的简称,由copy writer翻译而来。
多指以语辞进行广告信息内容表现的形式,有广义和狭义之分,广义的广告文案包括标题、正文、口号的撰写和对广告形象的选择搭配;狭义的广告文案包括标题、正文、口号的撰写。
在中国,由于各个行业发展都相对不够成熟,人员素质也参差不齐,这使得"文案"的概念常常被错误引用和理解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#define RFConfig_Bit16 (RX2_EN<<7 | CM<<6 | RFDR_SB<<5 | XO_F <<2 | RF_PWR) #define RFConfig_Bit17 (RF_CH<<1 | RXEN) //-----------------------------------------------------//通过宏定义将 18 字节的寄存器参数按照各个功能分解,以便于参数的调整 unsigned char code nRF2401_Conf[18] = { RFConfig_Bit0, RFConfig_Bit1, RFConfig_Bit2, RFConfig_Bit3, RFConfig_Bit4, RFConfig_Bit5, RFConfig_Bit6, RFConfig_Bit7, RFConfig_Bit8, RFConfig_Bit9, RFConfig_Bit10, RFConfig_Bit11, RFConfig_Bit12, RFConfig_Bit13, RFConfig_Bit14, RFConfig_Bit15, RFConfig_Bit16, RFConfig_Bit17 }; //-----------------------------------------------------------/* ************************************************************* * nRF2401 Tx/Rx functions * * * void Delay100(void); * void Config2401(void); //配置2401,写入初始化设置 * void SetTxMode(void); //设置为发送模式 * void SetRxMode(void); //设置为接收模式 * void nRF2401_TxPacket(unsigned char TxBuf[]); * //发送TxBuf[] 内的数据 长度由 DATA1_W 决定 * unsigned char nRF2401_RxPacket(unsigned char *RxBuf); * //检查是否有数据需要接受 如果有,则保存至RxBuf[] * //返回值 0:没有接收到数据 1:接收到数据 ************************************************************* */ //16M 晶振 600us 左右 void Delay100(void) { unsigned int i; for (i=0;i<100;i++); } /*================================================== nRF2401 设置配置寄存器时序 =====================================================*/ bdata unsigned char DATA_BUF; //用于ByteRead和ByteWrite函数 #define DATA7 ((DATA_BUF&BYTE_BIT7) != 0) #define DATA0 ((DATA_BUF&BYTE_BIT0) != 0)
file:///C|/Documents and Settings/Administrator/桌面/nrf2401.txt(第 1/9 页)[2011-4-12 21:15:44]
file:///C|/Documents and Settings/Administrator/桌面/nrf2401.txt
file:///C|/Documents and Settings/Administrator/桌面/nrf2401.txt
/* Email: wenming_hu2002@ 官方网址: 官方论坛:/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 位) */ #define DATA2_W 0x10 //0x10=2 字节 //频道2 发送/接收数据长度(单位:Bit)
#define DATA1_W 0xE0 //0x20=28 字节 //频道1 发送/接收数据长度(单位:Bit) /* 注意:2401 忽略ADDR 中超过ADDR_W 设定宽度的那些位,同时地址不能全部设置为0 */ //频道2 接收地址 < - 频道2 未启用 #define ADDR2_4 0x00 #define ADDR2_3 0x1c #define ADDR2_2 0xcc #define ADDR2_1 0xcc #define ADDR2_0 0xcc //频道 1 接收地址 (当前模块地址) <- 只使用到频道 1 #define ADDR1_4 0x00 #define ADDR1_3 0xcc #define ADDR1_2 0xcc #define ADDR1_1 0xcc #define ADDR1_0 0xcc #define ADDR_W 0x10 //0x10=2 字节 //发送/接收地址宽度(单位:Bit) #define CRC_L 0x1 //CRC 模式 0:8 位 1:16 位 #define CRC_EN 0x1 //CRC 校验 0:禁用 1:启用 #define RX2_EN 0x0 //双频道功能 0:禁用 1:启用 #define CM 0x1 //0:Direct mode 1:ShockBurst mode #define RFDR_SB 0x0 //传输速率0:250kbps/1:1Mbps(250kbps比1Mbps传输距离更远) #define XO_F 0x3 //16M //nRF2401 晶振频率(具体设置见下图) #define RF_PWR 0x3 //信号发射功率(具体设置见下图) #define RF_CH 0x2 //Channel RF 频率设置 //Channel = 2400MHz + RF_CH * 1.0MHz #define RXEN 0x0 //0:Tx 1:Rx //程序会通过 SetTxMode/SetRxMode 重新设置此项参数 //<将设置信息组合成每个字节的数据信息,此区域无需修改> #define RFConfig_Bit0 TEST_2 #define RFConfig_Bit1 TEST_1 #define RFConfig_Bit2 TEST_0 #define RFConfig_Bit3 DATA2_W #define RFConfig_Bit4 DATA1_W #define RFConfig_Bit5 ADDR2_4 #define RFConfig_Bit6 ADDR2_3 #define RFConfig_Bit7 ADDR2_2 #define RFConfig_Bit8 ADDR2_1 #define RFConfig_Bit9 ADDR2_0 #define RFConfig_Bit10 ADDR1_4 #define RFConfig_Bit11 ADDR1_3 #define RFConfig_Bit12 ADDR1_2 #define RFConfig_Bit13 ADDR1_1 #define RFConfig_Bit14 ADDR1_0 #define RFConfig_Bit15 (ADDR_W<<2 | CRC_L<<1 | CRC_ENAdministrator/桌面/nrf2401.txt(第 3/9 页)[2011-4-12 21:15:44]
file:///C|/Documents and Settings/Administrator/桌面/nrf2401.txt
unsigned char ByteRead(void) { unsigned char i; for (i=0;i<8;i++) { DATA_BUF=DATA_BUF<<1; CLK1=1; DATA=1; //设置为输入状态 if (DATA) //读取最高位,保存至最末尾,通过左移位完成整个字节 { DATA_BUF|=BYTE_BIT0; } else { DATA_BUF&=~BYTE_BIT0; } CLK1=0; } return DATA_BUF; } void ByteWrite(unsigned char send) { unsigned char i; DATA_BUF=send; for (i=0;i<8;i++) { if (DATA7) //总是发送最高位#define DATA7 ((DATA_BUF&BYTE_BIT7) != 0) { DATA=1; } else { DATA=0; } CLK1=1; DATA_BUF=DATA_BUF<<1; CLK1=0; } } /* <2401 配置寄存器的写入方式> NOTE.