Image
Image

自动化陈稳

+ 关注

粉丝 1     |     主题 105     |     回帖 1379

stm32驱动NRF24L01_原理+代码解析
2023-12-23 11:45
  • ST MCU
  • 64
  • 3505
  *NRF24L01_RX_Mode和NRF24L01_TX_Mode  
  *NRF24L01_RxPacket  
  照着 STATUS的图看上面的代码再结合宏定义,是不是 其实后面的函数都是一样的,这么看就行 ...  
  sta=NRF24L01_Read_Reg(STATUS); //读取状态寄存器的值 发完后读STATUS的值,MAX_TX在.h中定义为0x1 ...  
  先把CE置低进入待机模式1,前面说过写寄存器要处于掉电或待机模式 在Enhanced ShockBurstTM发送模式下,置 ...  
  *NRF24L01_TxPacket  
  *NRF24L01_Write_Buf  
  这里调用指针实际上缩短了运行时间  
  *NRF24L01_Read_Buf  
  status =SPI1_ReadWriteByte(reg);//发送寄存器号 这句发送的reg包含SPI指令和寄存器位置两部分,指令和 ...  
  status =SPI1_ReadWriteByte(reg);//发送寄存器号 这句发送的reg包含SPI指令和寄存器位置两部分,指令和 ...  
  *NRF24L01_Write_Reg  
  这个应该没啥问题,给发送通道写5个字节的地址,然后再读出来挨个检验,没验完5个就退出来证明检测失败 ...  
  *NRF24L01_Check  
  *NRF24L01_Init spi的初始化,没啥好说的  
  24l01的函数  
  代码解析 *nrf24l01.h中的宏定义  
  *接收流程 1)写Rx 节点的地址 RX_ADDR_P0 2)使能AUTO ACK EN_AA 3)使能PIPE 0 EN_RXADDR 4)选择通信 ...  
  *发送流程 1)写Tx 节点的地址 TX_ADDR 2)写Rx 节点的地址(主要是为了使能Auto Ack) RX_ADDR_P0 3)使 ...  
  0x11 RX_PW_P0 0x12 RX_PW_P1 0x13 RX_PW ...  
2
3
近期访客