⑴ 你好 你了解nrf2401吗 可以帮我一下吗
nRF24L01是由NORDIC[1]生产的工作在2.4GHz~2.5GHz的ISM 频段的单片无线收发器芯片。无线收发器包括:频率发生器、增强型“SchockBurst”模式控制器、功率放大器、晶体振荡器、调制器和解调器。输出功率频道选择和协议的设置可以通过SPI 接口进行设置。几乎可以连接到各种单片机芯片,并完成无线数据传送工作。
极低的电流消耗:当工作在发射模式下发射功率为0dBm 时电流消耗为11.3mA ,接收模式时为12.3mA,掉电模式和待机模缺卜旦式下电流消耗更低。
编辑本段
应用领域
● 无线鼠标 键盘 游戏机操纵杆
● 无线门禁
● 无线数据通讯
● 安防系统
● 遥控装置
● 遥感勘测
● 智能运动设备
● 工业传感器
● 玩具
编辑本段
性能参数
◆ 小体积,QFN20 4x4mm封装
◆ 宽电压工作范围,1.9V~3.6V,输入引脚可承受5V电压输入
◆ 工作温度范围,-40℃~+80℃
◆ 工作频率范围,2.400GHz~2.525GHz
◆ 发射功率可选择为0dBm、-6dBm、-12dBm和-18dBm
◆ 数据传输速率支持1Mbps、2Mbps[2]
◆ 低功耗设计,接收时工作电流12.3mA,0dBm功率发射时11.3mA,掉电模式时仅为900nA
◆ 126个弊穗通讯通道,6个数据通道,满足多点通讯和调频需要
◆ 增强型“ShockBurst”工作模式,硬件的CRC校验和点对多点的地址控制
◆ 数据包每次可伏扰传输1~32Byte的数据
◆ 4线SPI通讯端口,通讯速率最高可达8Mbps,适合与各种MCU连接,编程简单
◆ 可通过软件设置工作频率、通讯地址、传输速率和数据包长度
◆ MCU可通过IRQ引脚快判断是否完成数据接收和数据发送
编辑本段
原理图
电路原理
nRF24L01原理图
引脚定义
nRF24L01引脚定义
接线图
nRF24L01与5V单片机的连接(只适用于高阻口)
编辑本段
兼容性
nRF24L01 可以兼容nRF2401A、nRF24L01+、nRF24LE1、nRF24LU1等无线模块。
nRF24L01+
nRF24L01+(或称nRF24L01P)是nRF24L01的低功耗优化版,同时增加了250Kbps通讯速率的支持。nRF24L01与nRF24L01+之间可互用代码(除极少部分需要修改外)和互相通讯。
nRF2401A
nRF2401A与nRF24L01和nRF24L01+之间可完成相互通讯,前提是它们之间必须工作在相同的工作模式下。比如工作频率、传输速率、地址、数据包长度和CRC校验方式。
nRF24LE1
nRF24LE1、nRF24LU1也可以同nRF24L01之间完成通讯。通讯建立条件同nRF2401A。
⑵ 51单片机与nRF2401的问题。
那就拦帆A单片机这边当成发送就可了,B单片机那边作接收,B单片机把接宏衡租收到的数据再作处理。
我看了一下那个文档,里面有程序的,你可以参考一下的!
实验时收发双方都采用相同的电路
发送方程序如下:
org 0000H
AJMP START
;延时1/4s子程序
YANSHI1S: MOV R7,#250
YANSHI1S1: MOV R6,#250
YANSHI1S2: NOP
NOP
DJNZ R6,YANSHI1S2
DJNZ R7,YANSHI1S1
RET
;将58开始的单或多字节(字节数在R3中)写入芯片
XIENB: MOV R0,#58H
CLR P1.7 ;SCN变低
XIE00: ACALL XIE1B
INC R0
DJNZ R3,XIE00
SETB P1.7
RET
;;将R0所指1单元按SPI时序写入模块,调用该子程序前,应将CSN线变低
;单次或多次调用完成后将CSN线变高
XIE1B: MOV R2,#8
MOV A,@R0
XIE1B1: RLC A
MOV P1.5,C ;数据送上MOSI线
SETB P1.4 ;数据移入模块
CLR P1.4
DJNZ R2,XIE1B1
RET
;读芯片状态字 将芯片状态字读到5FH
DUZT: MOV R2,#8
SETB P1.5
CLR P1.7 ;CSN变低,
DUZT1: SETB P1.4 ;时钟上升
MOV C,P1.3 ;读入MISO线上的数据
MOV A,5FH
RLC A ;数据移入5FH寄存器
MOV 5FH,A
CLR P1.4
DJNZ R2,DUZT1
SETB P1.7 ;CSN变高,蔽兆完成一次命令
RET
START: MOV P1,#0AFH ;模块待机
MOV 58H,#20H ;准备写0寄存器
MOV 59H,#0EH ;上电,发射模式
MOV R3,#02H
ACALL XIENB
MOV 58H,#21H ;01寄存器
MOV 59H,#03H ;0,1通道允许自动应答
MOV R3,#02H
ACALL XIENB
MOV 58H,#22H ;02
MOV 59H,#03H
MOV R3,#02H
ACALL XIENB
MOV 58H,#23H ;03寄存器
MOV 59H,#03H ;5字节地址宽带
MOV R3,#02H
ACALL XIENB
MOV 58H,#24H ;04
MOV 59H,#14H ;重发等待500uS,重发4次,1A则重发10次,在206c处
MOV R3,#02H
ACALL XIENB
MOV 58H,#25H ;05寄存器
MOV 59H,#07H ;射频频率(汇编后在2076处)
MOV R3,#02H
ACALL XIENB
MOV 58H,#26H ;06
MOV 59H,#27H ;07为1M传输速率,0dB增益,27则为250k传输速率
MOV R3,#02H
ACALL XIENB
MOV 58H,#27H ;07
MOV 59H,#70H ;清模块内中断
MOV R3,#02H
ACALL XIENB
MOV 58H,#2AH ;0A寄存器(通道0)
MOV 59H,#02H ;配置地址
MOV 5AH,#3AH
MOV 5BH,#39H
MOV 5CH,#38H
MOV 5DH,#37H
MOV R3,#06H
ACALL XIENB
MOV 58H,#30H ;10寄存器
MOV R3,#06H ;发送地址
ACALL XIENB
MOV 58H,#2BH ;0B寄存器(通道1)
MOV 59H,#01H ;本机地址
MOV R3,#06H
ACALL XIENB
MOV 58H,#31H ;11寄存器
MOV 59H,#10H ;0通道有效数据宽带16字节
MOV R3,#02H
ACALL XIENB
MOV 58H,#32H ;12寄存器
MOV 59H,#10H ;1通道有效数据宽度16字节
MOV R3,#02H
ACALL XIENB
XIEFS: MOV 58H,#0A0H ;写发送数据到芯片
MOV R0,#58H
MOV R3,#10H
CLR P1.7
ACALL XIE1B
MOV R0,#70H
XIEXUN: ACALL XIE1B
INC R0
DJNZ R3,XIEXUN
SETB P1.7
SETB P1.6 ;启动发射
MOV R7,#5
DJNZ R7,$
CLR P1.6
JB P3.2,$
cpl p1.0
ACALL DUZT ;读状态寄存器
MOV 58H,#27H ;07
MOV 59H,#70H ;清中断
MOV R3,#02H
ACALL XIENB
MOV 58H,#0E1H ;清模块发送缓冲区
MOV R3,#01H
ACALL XIENB
ACALL YANSHI1S
SJMP XIEFS
end
接收端程序:
org 0000H
AJMP START
org 0003H
AJMP EXINT0
;延时1/4s子程序
YANSHI1S: MOV R7,#250
YANSHI1S1: MOV R6,#250
YANSHI1S2: NOP
NOP
DJNZ R6,YANSHI1S2
DJNZ R7,YANSHI1S1
RET
;将58开始的单或多字节(字节数在R3中)写入芯片
XIENB: MOV R0,#58H
CLR P1.7 ;SCN变低
XIE00: ACALL XIE1B
INC R0
DJNZ R3,XIE00
SETB P1.7
RET
;;将R0所指1单元按SPI时序写入模块,调用该子程序前,应将CSN线变低
;单次或多次调用完成后将CSN线变高
XIE1B: MOV R2,#8
MOV A,@R0
XIE1B1: RLC A
MOV P1.5,C ;数据送上MOSI线
SETB P1.4 ;数据移入模块
CLR P1.4
DJNZ R2,XIE1B1
RET
;按SPI时序读模块一字节入单片机R0所指单元,调用该子程序前,应将CSN线变低
;单次或多次调用完成后将CSN线变高
DU1B: MOV R2,#8
DU1B1: SETB P1.4
MOV C,P1.3
RLC A
CLR P1.4
DJNZ R2,DU1B1
MOV @R0,A
RET
;按SPI时序读模块接收缓冲区数据入单片机R0所指单元,字节数在R3中
DUNB: PUSH 00H
MOV 58H,#61H ;写一字节命令
MOV R0,#58H
CLR P1.7
ACALL XIE1B
POP 00H ;R0指向接收缓冲区首地址
DUXUN: ACALL DU1B
INC R0
DJNZ R3,DUXUN
SETB P1.7
RET
;读芯片状态字 将芯片状态字读到5FH
DUZT: MOV R2,#8
SETB P1.5 ;输入芯片1
CLR P1.7 ;CSN变低,
DUZT1: SETB P1.4 ;时钟上升
MOV C,P1.3 ;读入MISO线上的数据
MOV A,5FH
RLC A ;数据移入5FH寄存器
MOV 5FH,A
CLR P1.4
DJNZ R2,DUZT1
SETB P1.7 ;CSN变高,完成一次命令
RET
START: MOV P1,#0AFH ;模块待机
SETB 0A8H ;允许外部中断0
CLR 88H ;电平触发
SETB 0B8H ;高优先级
SETB 0AFH ;CPU开中断
MOV 58H,#20H ;准备写0寄存器
MOV 59H,#0FH ;上电,接收模式(发射时,设置为0EH)
MOV R3,#02H
ACALL XIENB
MOV 58H,#21H ;01寄存器
MOV 59H,#03H ;0,1通道允许自动应答
MOV R3,#02H
ACALL XIENB
MOV 58H,#22H ;02
MOV 59H,#03H ;允许0,1通道接收
MOV R3,#02H
ACALL XIENB
MOV 58H,#23H ;03寄存器
MOV 59H,#03H ;5字节地址宽带
MOV R3,#02H
ACALL XIENB
MOV 58H,#24H ;04
MOV 59H,#14H ;重发等待500uS,重发4次
MOV R3,#02H
ACALL XIENB
MOV 58H,#25H ;05寄存器
MOV 59H,#07H ;射频频率
MOV R3,#02H
ACALL XIENB
MOV 58H,#26H ;06
MOV 59H,#27H ;设置为07为1M传输速率,0dB增益(若为27,则是250kpbs,0dB)
MOV R3,#02H
ACALL XIENB
MOV 58H,#27H ;07
MOV 59H,#70H ;清模块内中断
MOV R3,#02H
ACALL XIENB
MOV 58H,#2AH ;0A寄存器(通道0)
MOV 59H,#01H ;配置地址(对方地址)
MOV 5AH,#3AH
MOV 5BH,#39H
MOV 5CH,#38H
MOV 5DH,#37H
MOV R3,#06H
ACALL XIENB
MOV 58H,#30H ;10寄存器
MOV R3,#06H ;发送地址
ACALL XIENB
MOV 58H,#2BH ;0B寄存器(通道1)
MOV 59H,#02H ;本机地址
MOV R3,#06H
ACALL XIENB
MOV 58H,#31H ;11寄存器
MOV 59H,#10H ;0通道有效数据宽带16字节
MOV R3,#02H
ACALL XIENB
MOV 58H,#32H ;12寄存器
MOV 59H,#10H ;1通道有效数据宽度16字节
MOV R3,#02H
ACALL XIENB
SETB P1.6 ;启动接收
HALT: SJMP HALT
EXINT0: PUSH ACC
PUSH PSW
ACALL DUZT ;读状态寄存器
MOV 58H,#27H ;07
MOV 59H,#70H ;清中断
MOV R3,#02H
ACALL XIENB
MOV R0,#60H ;读接收数据到60H到6FH
MOV R3,#10H
ACALL DUNB
CPL P1.0
FANHUI: POP PSW
POP ACC
RETI
end
⑶ 关于单片机89C51与无线模块NRF401通讯协议问题
对,nrf2401和单片机是靠SPI通信的,你只有把数据用SPI的方式,发给NRF2401,它会帮你用无线的形式发出去的,接收也一样,NRF2401会把接收到的数据,存在接收寄存器里,你去读这个寄存器就好了。
当然,nrf2401的设置,要设置好,什么接收和发送地址拉,通道拉,中断方法拉,频率拉,等等。
网上
有很多资料,厂家应该也会提供资料的,多读上面的资料,不难。
如果,你还在理论阶段,我可以给你点nrf24L01的,可能有点不同,但基本应该是类似的。
哦,是nrf401啊,呵呵
,我没用过,同一厂家,原理应该类似
⑷ nrf401与nrf2401
直接下载DATASHEET看一下,里面就有典型应用电路
nRF401无线收发芯片
nRF401是Nordic公司研制的单片UHF无线收发芯片,工作在433MHz ISM(Instrial, Scientific and Medical)频段。它采用FSK调制解调技术,抗干扰能力强,并采用PLL频率合成技术,频率稳定性好,发射功率最大可达10dBm,接收灵敏度最大为-105dBm,数据传输速率可达20Kbps,工作电压在+3~5V之间。nRF401无线收发芯片所需外围元件较少,并可直接单片机串口。
nRF401芯片内包含有发射功率放大器(PA)、低噪声接收放大器(LNA)、晶体振荡器(OSC)、锁相环(PLL)、压控振荡器(VCO)、混频器(MIXFR)、解调器(DEM)等电路。在接收模式中,nRF401被配置成传统的外差式接收机,所接收的射频调制的数字信号被低噪声较大器放大,经混频器变换成中频,放大、滤波后进入解调器,解调后变换成数字信号输出(DOUT端)。在发射模式中,数字信号经DIN端输入,经锁相环和压控振荡器处理后进入到发射功率放大器射频输出。由于采用了晶体振荡和PLL合成技木,频率稳定性极好;采用FSK调制和解调,抗干扰能力强。
nRF401的ANT1和ANT2引脚是接收时低噪声接收放大器LNA的输入,以及发送时发射功率放大器PA的输出。连接nRF401的天线可以以差分方式连接到nRF401,一个50Ω的单端天线也可以通过一个差分转换匹配网络连接到nRF401。
图1所示为使用单端天线的nRF401的电路图,50Ω的单端天线通过差分转换匹配网络连接到nRF401的ANT1和ANT2引脚。
图2所示为使用环形天线的nRF401的电路图,整个环形天线可以做在PCB上,对比传统的鞭状天线或单端天线,不仅节省空间和生产成本,机构上也更稳固可靠。 nRF24E1无线SoC芯片
nRF24E1是一种工作频率可达2.4 GHz的无线射频收发芯片,内部嵌有与8051兼容的微控制器和9通道10位ADC,可在1.9~3.6 V电压下稳定工作,而不需要外接SAW滤波器。nRF24E1内部具有电压调整器和VDD电压监视。
nRF24E1是业界首次推出的全球2.4 GHz通用完整型低成本射频系统级芯片,其无线收发部分有与nRF2401相同的功能。该功能可由外部并行口和外部SPI来启动,每一个待发信号对于处理器来说,都可以作为中断来编程,或者通过GPIO端口来实现。在nRF24E1的内部存储空间中,512 B ROM用于存储引导程序。上电后,该ROM可以将EEPROM中存储的程序下载到4KB RAM的程序运行空间,另外的256 B RAM作为数据存储器,无线收发器nRF24E1可以通过软件编程来设定接收地址、收发频率、发射功率、无线传输速率、无线收发模式以及CRC校验和长度以及有效数据长度等无线通信参数。在掉电模式,晶振停止工作时的电流消耗典型值为2 uA。nRF24E1的典型应用电路如图3所示。
⑸ ARM嵌入式芯片 与 nRF2401芯片 之间是什么关系~~
真拦卜不知道楼上的答案都是从哪粘贴来的,二楼说的还算有点道理。
cpu架构主要有两种:一种是CISC(复杂指令集计算机)架构,另一种是RISC(精简指令集计算机)架构,CISC架构硬件结构复杂,但软件算法简单,而RISC架构硬件结构简单但软件实现较复杂。用于嵌入式的微处理器都是基于RISC架构的。
ARM 既是一个公司的名字也是一个处理器的名字,准确的说是一个系列的处理器的名字。ARM 公司只提供该处理器的内核而不提供产品,我们用的产品都是由别的电子公司生产的,如三星等。三星典型的产品是S3C2410,因为他们用的都是ARM 公司提供的内核(是用于嵌入式方向的,因为他们就是提供内核的,所以有很多种处理器的内核),所以叫ARM嵌入式芯片。另外,嵌入式处理器还有很多种,如MIPS等。至于汪迹nRF2401芯片如果用的也是ARM 公司提供的内核(我不是很了解),那么就也叫ARM嵌入式芯片。不过,我估计nRF2401只是一个芯片或单片机。对nRF2401不了解也不敢多说。ARM嵌入式芯片与单片机和普通的芯简陵穗片的区别想必你也应该知道。我就不多说了。