天线|RF射频
直播中

王桂珍

7年用户 160经验值
私信 关注
[问答]

关于NRF24L01的问题怎么解决

SPI_NRF_Write(SPI1,NRF_WRITE_REG+TX_ADDR,buf,5);  

想问下大神为何跳不出  while (SPI_I2S_GetFlagStatus(SPIx, SPI_I2S_FLAG_RXNE) == RESET);这条语句,怎样让RXNE置1额

      

*************************************************************************

u8 SPI_NRF_Write(SPI_TypeDef* SPIx,char CMD,unsigned char* WBuff,unsigned char ByteNUM)

{

unsigned char i,status;

SPI1_CE_LOW();

SPI1_NRF_CSN_LOW();//使能片选



status=SPI_RW_Byte( SPIx , CMD);

for(i=0;i
{

     SPI_RW_Byte( SPIx,*WBuff++);

   // printf("写入第%d个数据rn",ByteNUM);   

}

SPI1_NRF_CSN_HIGH();//

return status;

}//SPI_NRF_Write()

************************************************************************************************

u8 SPI_RW_Byte(SPI_TypeDef* SPIx,unsigned char Byte)

{

      while( SPI_I2S_GetFlagStatus(SPIx, SPI_I2S_FLAG_TXE) == RESET);  //查发送缓冲器是否为空,空即可以发送

      SPI_I2S_SendData(SPIx, Byte);   //库函数:发送一个字节

      //当SPI接收缓冲器为空时等待

      while (SPI_I2S_GetFlagStatus(SPIx, SPI_I2S_FLAG_RXNE) == RESET);

      return SPI_I2S_ReceiveData(SPIx);

}//SPI_RW_Byte()

回帖(2)

李海洪

2020-5-25 07:45:59
检查配置。
举报

卿洁

2020-5-25 07:53:47

哦,谢了
举报

更多回帖

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