关于SPI_FLASH的ReadWriteByte

2019-07-20 22:42发布

SPI中有一个读写函数如下,而且在SPI_FLASH中的发送指令等操作中都会调用些函数,而不是只调用SPI_I2S_SendData,找了很多资料也没有明白原因,想请教一下各位大侠,帮忙解释一下这个函数这样写的原因和意义?谢谢!

//SPI1 读写一个字节
//TxData:要写入的字节
//返回值:读取到的字节
u8 SPI1_ReadWriteByte(u8 TxData)
{     
  while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET){}//等待发送区空  

SPI_I2S_SendData(SPI1, TxData); //通过外设SPIx发送一个byte  数据
  
  while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET){} //等待接收完一个byte  

       return SPI_I2S_ReceiveData(SPI1); //返回通过SPIx最近接收的数据
      
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。