SPI1_ReadWriteByte()读取出来的不是刚写进去的吗?不是的话那读取哪个字节?

2019-07-21 07:08发布

[mw_shl_code=c,true]u8 SPI1_ReadWriteByte(u8 TxData) { u8 retry=0; while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET) //检查指定的SPI标志位设置与否:发送缓存空标志位 { retry++; if(retry>200)return 0; } SPI_I2S_SendData(SPI1, TxData); //通过外设SPIx发送一个数据 retry=0; while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET)//检查指定的SPI标志位设置与否:接受缓存非空标志位 { retry++; if(retry>200)return 0; } return SPI_I2S_ReceiveData(SPI1); //返回通过SPIx最近接收的数据 [/mw_shl_code] 读取出来的字节不是刚写进去的吗?如果不是的话,那读取哪个字节?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。