关于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最近接收的数据
      
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
lison0103
1楼-- · 2019-07-21 01:05
 精彩回答 2  元偷偷看……
gjchen
2楼-- · 2019-07-21 05:51
本人新人,所以赏金不多,还望大家理解,谢谢!
stm32探索者
3楼-- · 2019-07-21 11:15
 精彩回答 2  元偷偷看……
hpeng1874
4楼-- · 2019-07-21 17:13
楼上正解
gjchen
5楼-- · 2019-07-21 19:47
谢谢大家的回复,最近事情比较多,所以回帖比较晚,还望大家见谅!

一周热门 更多>