nRF24L01无线模块讲解

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

队会报告谭新梅2014/04/12nRF24L01无线发射模块•nRF24L01芯片的介绍•nRF24L01的应用举例概述•nRF24L01是一款工作在2.4~2.5GHz世界通用ISM频段的单片无线收发器芯片。•输出功率、频道选择和协议的设置可以通过SPI接口进行设置。•极低的电流消耗:当工作在发射模式下发射功率为-6dBm时,电流消耗为9mA,接收模式时为12.3mA。掉电模式和待机模式下电流消耗更低。功能描述•单片式收发芯片•内置硬件链路层•增强型SchockBurstTM功能•自动应答及自动重发功能•内置CRC检错和点对多点的通信地址控制•无线速率:1或2Mbps•SPI接口速率:0~8Mbps•125个可选的频道,满足多点通信和调频通信的需要•低工作电压(1.9~3.6V)封装引脚及其引脚功能nRF单端50Ω射频输出原理图nRF24L10与单片机应用电路图举例:NRF24L01模块接口与STM32连接原理图中断•nRF24L01的中断引脚(IRQ)为低电平触发,当状态寄存器中TX_DS(数据发送完成中断位)、RX_DR(接收数据中断位)或MAX_RT(达到最多次重发中断位)为高时触发中断。•当MCU给中断源写‘1’时,中断引脚被禁止。可屏蔽中断可以被IRQ中断屏蔽。通过设置可屏蔽中断位为高,则中断响应被禁止。默认状态下所有的中断源是被禁止的。工作模式•nRF24L01可以设置为以下几种模式:工作模式•待机模式:待机模式I在保证快速启动的同时,减少系统平均消耗电流。在待机模式I下,晶振正常工作。在待机模式ii下,部分时钟缓冲器处在工作模式。当发送端TXFIFO寄存器为空并且CE为高电平时进入待机模式ii。在待机模式期间,寄存器配置字内容保持不变。•掉电模式:在掉电模式下,nRF24L01各功能关闭,保持电流消耗最小。进入掉电模式后,nRF24L01停止工作,但寄存器内容保持不变。增强型的ShockBurstTM模式•增强型的ShockBurstTM模式可以使得双向链接协议执行起来更为容易、有效。典型的双向链接为:发送方要求终端设备在接收到数据后有应答信号,以便于发送方检测有无数据丢失。一旦数据丢失,则通过重新发送功能将丢失的数据恢复。•增强型的ShockBurstTM模式可以同时控制应答及重发功能而无需增加MCU工作量。•在EnhancedShockBurstTM收发模式下,nRF24L01自动处理字头和CRC校验码。在接收数据时,自动把字头和CRC校验码移去。在发送数据时,自动加上字头和CRC校验码增强型的ShockBurstTM模式•nRF24L01配置为增强型的ShockBurstTM模式下时,只要MCU有数据要发送,nRF24L01就会自动启动ShockBurstTM模式来发送数据。在发送完数据后nRF24L01转到接收模式,并等待终端的应答信号。如果没有收到应答信号,nRF24L01将重发相同的数据包,直到收到应答信号或重发次数超过SETUP_RETR_ARC寄存器中设置的值为止,如果重发次数超过了设定值,则产生MAX_RT中断。•只要接收到确认信号,nRF24L01就认为最后一包数据已经发送成功(接收方已经收到数据),把TXFIFO中的数据清除掉并产生TX_DS中断(IRQ引脚置高)。数据通道nRF24L01在接收模式下可以接收6路不同通道的数据。数据通道•每一个数据通道使用不同的地址,但是共用相同的频道。也就是说6个不同的nRF24L01设置为发送模式后可以与同一个设置为接收模式的nRF24L01进行通讯,而设置为接收模式的nRF24L01可以对这6个发射端进行识别。•数据通道是通过寄存器EN_RXADDR来设置的,默认状态下只有数据通道0和数据通道1是开启状态的。•nRF24L01在确认收到数据后记录地址,并以此地址为目标地址发送应答信号,在发送端,数据通道0被用作接收应答信号,因此属通道0的接收地址要与发送地址端地址相等,以确保接收到正确的应答信号。数据通道•数据通道0是唯一的一个可以配置为40位自身地址的数据通道。1~5数据通道都为8位自身地址和32位公用地址。所有的数据通道都可以设置为增强型ShockBurst模式。寄存器配置•nRF24L01所有的寄存器都是通过SPI口进行配置的(寄存器配置详见附件)。CSN为低后,SPI接口等待指令执行。每一条指令都必须通过一次CSN由高到低的变化。•SPI指令格式:nRF24l01的SPI通信时序增强型ShockBurstTM发送模式•1、配置寄存器位PRIM_RX为低•2、当MCU有数据要发送时,接收节点地址(TX_ADDR)和有效数据(TX_PLD)通过SPI接口写入nRF24L01。发送数据的长度以字节计数从MCU写入TXFIFO。当CSN为低时数据被不断的写入。发送端发送完数据后,将通道0设置为接收模式来接收应答信号,其接收地址(RX_ADDR_P0)与接收端地址(TX_ADDR)相同。例:在上图中数据通道5的发送端(TX5)及接收端(RX)地址设置如下:TX5:TX_ADDR=0xB3B4B5B605TX5:RX_ADDR_P0=0xB3B4B5B605RX:RX_ADDR_P5=0xB3B4B5B605增强型ShockBurstTM发送模式•3、设置CE为高,启动发射。CE高电平持续时间最小为10us。•4、nRF24L01ShockBurstTM模式:􀁺无线系统上电􀁺启动内部16MHz时钟􀁺无线发送数据打包􀁺高速发送数据(由MCU设定为1Mbps或2Mbps)增强型ShockBurstTM发送模式•5、如果启动了自动应答模式(自动重发计数器不等于0,ENAA_P0=1),无线芯片立即进入接收模式。•如果在有效应答时间范围内收到应答信号,则认为数据成功发送到了接收端,此时状态寄存器的TX_DS位置高并把数据从TXFIFO中清除掉。如果在设定时间范围内没有接收到应答信号,则重新发送数据。如果自动重发计数器(ARC_CNT)溢出(超过了编程设定的值),则状态寄存器的MAX_RT位置高。不清除TXFIFO中的数据。当MAX_RT或TX_DS为高电平时IRQ引脚产生中断。IRQ中断通过写状态寄存器来复位。如果重发次数在达到设定的最大重发次数时还没有收到应答信号的话,在MAX_RT中断清除之前不会重发数据包。数据包丢失计数器(PLOS_CNT)在每次产生MAX_RT中断后加一。也就是说:重发计数器ARC_CNT计算重发数据包次数,PLOS_CNT计算在达到最大允许重发次数时仍没有发送成功的数据包个数。增强型ShockBurstTM发送模式•6、如果CE置低,则系统进入待机模式I。如果不设置CE为低,则系统会发送TXFIFO寄存器中下一包数据。如果TXFIFO寄存器为空并且CE为高则系统进入待机模式II.•7、如果系统在待机模式II,当CE置低后系统立即进入待机模式I.增强型ShockBurstTM接收模式•1、ShockBurstTM接收模式是通过设置寄存器中PRIM_RX位为高来选择的。准备接收数据的通道必须被使能(EN_RXADDR寄存器),所有工作在增强型ShockBurstTM模式下的数据通道的自动应答功能是由(EN_AA寄存器)来使能的,有效数据宽度是由RX_PW_Px寄存器来设置的。地址的建立过程见增强型ShockBurstTM发送章节。•2、接收模式由设置CE为高来启动。•3、130us后nRF24L01开始检测空中信息。增强型ShockBurstTM接收模式•4、接收到有效的数据包后(地址匹配、CRC检验正确),数据存储在RX_FIFO中,同时RX_DR位置高,并产生中断。状态寄存器中RX_P_NO位显示数据是由哪个通道接收到的。•5、如果使能自动确认信号,则发送确认信号。•6、MCU设置CE脚为低,进入待机模式I(低功耗模式)。•7、MCU将数据以合适的速率通过SPI口将数据读出。•8、芯片准备好进入发送模式、接收模式或掉电模式。两种数据双方向的通讯方式•如果想要数据在双方向上通讯,PRIM_RX寄存器必须紧随芯片工作模式的变化而变化。处理器必须保证PTX和PRX端的同步性。在RX_FIFO和TX_FIFO寄存器中可能同时存有数据。跳频技术•跳频技术:是在2.4GHz频带以一定的频宽将其划分为若干个无线电频率信道,并且以使用接收和发送两端一样的频率跳跃模式来接发讯号及防止数据截取。•其工作原理是,收发双方传输信号的载波按照预定规律进行离散变化。以达到避开干扰,完成传输。跳频实现流程图nRF24L01的应用举例•无线鼠标,键盘,游戏机操纵杆•无线数据通讯•无线门禁•安防系统•遥控装置•摇撼勘测•玩具thankyou

1 / 28
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功