je ne sais plus

BurstSPI_NUCLEO_L152RE.cpp

Committer:
FreeControl
Date:
2015-06-17
Revision:
0:3787bbf77ca8

File content as of revision 0:3787bbf77ca8:

    

/* FastSPI_NUCLEO_L152RE.cpp */
#ifdef TARGET_NUCLEO_L152RE
#include "FastSPI.h"
 
void FastSPI::fastWrite(int data) {
    
    SPI_TypeDef *spi = (SPI_TypeDef *)(_spi.spi);
    // Check if data is transmitted
    while (!((SPI_I2S_GetFlagStatus(spi, SPI_I2S_FLAG_TXE) != RESET) ? 1 : 0));
    SPI_I2S_SendData(spi, (uint16_t)data);
    }
    
void FastSPI::clearRX( void ) {
    int status;
    //Check if the RX buffer is busy
    SPI_TypeDef *spi = (SPI_TypeDef *)(_spi.spi);
    status = ((SPI_I2S_GetFlagStatus(spi, SPI_I2S_FLAG_BSY) != RESET) ? 1 : 0);
    if (status){   
        // Check RX buffer readable
        while (!((SPI_I2S_GetFlagStatus(spi, SPI_I2S_FLAG_RXNE) != RESET) ? 1 : 0));
        int dummy = (int)SPI_I2S_ReceiveData(spi);
    }
}
#endif