NRF24LE1无线通信机制

上传人:pu****.1 文档编号:484936056 上传时间:2022-10-24 格式:DOCX 页数:7 大小:98.66KB
返回 下载 相关 举报
NRF24LE1无线通信机制_第1页
第1页 / 共7页
NRF24LE1无线通信机制_第2页
第2页 / 共7页
NRF24LE1无线通信机制_第3页
第3页 / 共7页
NRF24LE1无线通信机制_第4页
第4页 / 共7页
NRF24LE1无线通信机制_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《NRF24LE1无线通信机制》由会员分享,可在线阅读,更多相关《NRF24LE1无线通信机制(7页珍藏版)》请在金锄头文库上搜索。

1、1系统框图如下:NRF24LE1通过SPI与模块NM1010、无线收发器通信。通信流程如下:1) NM1010采集数据,通过SPI发送NRF24LE1,这一通信过程简记为SPI_1;2) NRF24LE1转发给无线收发器,这一通信过程简记为SPI_2;3) 无线收发器将数据打包成无线通信协议中的格式,将数据由空中传输给dongle端4) dongle端解析后交上层处理。2 NRF24LE1与模块通信过程Main流程图如下:SPI_1 过程直接返回 Motion、Delta_X_L、Delta_Y_L、Delta_XIY_H 的值。主机根据HID报告描述符里的mouse_report,转换数据格

2、式,发送给无线模块。SPI_2过程传输的数据包格式如下:Byte0Byte1Byte2Byte3Mouse_button_packet 4 ID1Mouse buttonsScroll wheelPanMouse_mov_packet 4 ID2X_LSBY_LSB_X _MSBY_MSBMouse_advanced_packet 2 ID3Advanced buttons3无线收发器模块鼠标与dongle之间通过彼此的射频收发器通信,MCU通过三个接口(RFCON.rfce, RFCON.rfcsn, RFIRQ) 对射频收发器进行控制;register map为寄存器映射,用于保存MCU对

3、于射频收发的配置;TX FIFOs、RX FIFOs分别用于存储待发送和接收到的数据包。在两个射频收发器之间进行的包的交换,一个射频收发器作为主接收(PRX),另一个射频收发器作为主发 送(PTX)。包的自动处理过程如下:图2 接收模式图1发送模式在增强型ShockBurst中可以设定重发的次数和重发的间隔参数,而后所有的工作均由增强型ShockBurst 自动完成而无需MCU的干预。无线收发器中打包格式描述:前导码地址(35字节)标志位(9位)数据(132字节)CRC 校验(0/1/2 节)前导码前导码用来检测0和1。芯片在接收模式下去除前导码,在发送模式下加入前 导码。地址*地址内容为接收

4、机地址*地址宽度可以是3、4或5字节宽度*地址可以对接收通道及发送通道分别进行配置*从接收的数据包中自动去除地址。标志位* PI D:数据包识别。其中两位:是用来每当接收到新的数据包后加一*七位保留,用作将来与其它产品相兼容*当nRF24L01与nRF2401/ nRF24E1通讯时不起作用。数据132字节宽度CRC* 02字节宽度的CRC校验* 8位CRC校验的多项式是:X8+X2+X+1* 16位CRC校验的多项式是:X16+X12+X5+1表1数据包描述4无线传输过程nRF24L01在接收模式下可以接收6路不同通道的数据,见图。每一个数据通道使用不同的 地址,但是共用相同的频道。数据通道

5、0是唯一的一个可以配置为40位自身地址的数据通道。15数据通道都为8位自身 地址和32位公用地址,地址设置在RX_ADDR_Px寄存器,高四字节相同,byte 0地址唯一, 如下图所示。默认启动数据通道0和1。鼠标数据传输使用pipe1。Dats pipe 0 i:rx addr pcii| Byte 4 | Byte 3 | Byte 2 | Byte 1 | Byte 0 |0xE7CxD3OxFO0x350x77Data pipe 1 i:rx addr pdData pipe 2 i:rx addr P2)0xC20xC20xC2 0xC20xC2力5山LT-0xC2 | 0xC20x

6、C2 | 0xC20xC3nRF24L01在确认收到数据后记录地址,并以此地址为目标地址发送应答信号。在发送端, 数据通道0被用做接收应答信号,因此,数据通道0的接收地址要与发送端地址相等以确保 接收到正确的应答信号。(?发送端只使用pipe0发送数据?)增强型ShockBurstpM发送模式:1、配置寄存器位PRIM_RX为低2、当MCU有数据要发送时,接收节点地址(TX_ADDR)和有效数据(TX_PLD)通过SPI接 口写入nRF24L01。发送数据的长度以字节计数从MCU写入丁乂 FIFO。当CSN为低时数据 被不断的写入。发送端发送完数据后,将通道0设置为接收模式来接收应答信号,其接

7、收地址(RX_ADDR_P0)与接收端地址(TX_ADDR)相同。例:数据通道5的发送端(TX5)及接收端(RX)地址设置如下:TX5: TX_ADDR=0xB3B4B5B605TX5: RX_ADDR_P0=0xB3B4B5B605RX: RX_ADDR_P5=0xB3B4B5B6053、 设置CE为高,启动发射。CE高电平持续时间最小为10 us。4、nRF24L01 ShockBurstTM 模式:无线系统上电启动内部16MHz时钟无线发送数据打包(见数据包描述)高速发送数据(由MCU设定为1Mbps或2Mbps)5、如果启动了自动应答模式(自动重发计数器不等于0, ENAA_P0=1)

8、,无线芯片立即进 入接收模式。如果在有效应答时间范围内收到应答信号,则认为数据成功发送到了接收端, 此时状态寄存器的TX_DS位置高并把数据从TX FIFO中清除掉。如果在设定时间范围内没 有接收到应答信号,则重新发送数据。开始乱码?乱码?数据处理,并发送ACK接收模式载波监听接收模式载波监听改变信道图无线传输接收模式Data formatThe data format (payload contents) of the packets transmitted wirelessly is the same as that defined for the remote USB endpoint.

9、 In the USB dongle the data received from the mouse is simply forwarded directly to the PC with no modifications. With this approach there is no need for complex decoding of payload in the dongle, which also saves a noticeable amount of code space in dongle firmware.The remote control transmits two

10、packet types. A 9 byte packet where the first byte is report id=0x01, each bit in the next bytes represent a button. The organzation of the buttons can be understood by looking at nrfr_remote_hid_table.c and g_usb_hid_report_3 in the dongle. A 9 byte keyboard packet where a byte with report id=0x02 must be added in the start of the packet compared with the nRFReady Keyboard packet. Buttons like enter, numbers 1-9, and the joystick up,down,left,right) utilize this packet.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号