STM32/STM8技术论坛
直播中

jf_66475172

3年用户 8经验值
擅长:嵌入式技术
私信 关注
[问答]

NRF24L01无法收到数据

STM32F407上面使用NRF24L与上位机通信,板子上的NRF收不到消息,NRF检测的时候写入地址再读出来时正确的。可以帮我看看是我哪里配置有问题吗?谢谢大家。
  • 屏幕截图 2022-04-08 205620.png
  • 屏幕截图 2022-04-08 205726.png
已退回5积分

回帖(1)

jf_66475172

2022-4-8 21:40:28
  1. u8 NRF_Rx_Dat(u8 *rxbuf)
  2. {
  3.         u8 state;
  4.         NRF_CE_HIGH();         //进入接收状态
  5.          /*等待接收中断*/
  6.         while(NRF_Read_IRQ()!=0);
  7.        
  8.         NRF_CE_LOW();           //进入待机状态
  9.         /*读取status寄存器的值  */               
  10.         state=SPI_NRF_ReadReg(STATUS);
  11.          
  12.         /* 清除中断标志*/      
  13.         SPI_NRF_WriteReg(NRF_WRITE_REG+STATUS,state);

  14.         /*判断是否接收到数据*/
  15.         if(state&RX_DR)                                 //接收到数据
  16.         {
  17.           SPI_NRF_ReadBuf(RD_RX_PLOAD,rxbuf,RX_PLOAD_WIDTH);//读取数据
  18.              SPI_NRF_WriteReg(FLUSH_RX,NOP);          //清除RX FIFO寄存器
  19.           return RX_DR;
  20.         }
  21.         else   
  22.                 return ERROR;                    //没收到任何数据
  23. }
举报

更多回帖

发帖
×
20
完善资料,
赚取积分