diff --git a/bsp/stm3210/msd.c b/bsp/stm3210/msd.c index 654a97e5db03aadd9d03464345ad8783a306f2bb..48b8662a77420197293f6d3638c1b2fdafd99832 100644 --- a/bsp/stm3210/msd.c +++ b/bsp/stm3210/msd.c @@ -710,6 +710,11 @@ void MSD_WriteByte(u8 Data) while (SPI_I2S_GetFlagStatus(MSD_SPI, SPI_I2S_FLAG_TXE) == RESET); /* Send the byte */ SPI_I2S_SendData(MSD_SPI, Data); + + /*!< Wait to receive a byte*/ + while(SPI_I2S_GetFlagStatus(MSD_SPI, SPI_I2S_FLAG_RXNE) == RESET); + /*!< Return the byte read from the SPI bus */ + SPI_I2S_ReceiveData(MSD_SPI); } /******************************************************************************* @@ -792,7 +797,7 @@ void SPI_Config(void) /* * RT-Thread SD Card Driver * 2009-04-17 Bernard first version - * 2010-07-15 Modify read/write according new block driver interface + * 2010-07-15 Modify read/write according new block driver interface */ #include #include