je ne sais plus
BurstSPI_NUCLEO_L152RE.cpp@0:3787bbf77ca8, 2015-06-17 (annotated)
- Committer:
- FreeControl
- Date:
- Wed Jun 17 13:49:54 2015 +0000
- Revision:
- 0:3787bbf77ca8
je ne sais plus
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
FreeControl | 0:3787bbf77ca8 | 1 | |
FreeControl | 0:3787bbf77ca8 | 2 | |
FreeControl | 0:3787bbf77ca8 | 3 | /* FastSPI_NUCLEO_L152RE.cpp */ |
FreeControl | 0:3787bbf77ca8 | 4 | #ifdef TARGET_NUCLEO_L152RE |
FreeControl | 0:3787bbf77ca8 | 5 | #include "FastSPI.h" |
FreeControl | 0:3787bbf77ca8 | 6 | |
FreeControl | 0:3787bbf77ca8 | 7 | void FastSPI::fastWrite(int data) { |
FreeControl | 0:3787bbf77ca8 | 8 | |
FreeControl | 0:3787bbf77ca8 | 9 | SPI_TypeDef *spi = (SPI_TypeDef *)(_spi.spi); |
FreeControl | 0:3787bbf77ca8 | 10 | // Check if data is transmitted |
FreeControl | 0:3787bbf77ca8 | 11 | while (!((SPI_I2S_GetFlagStatus(spi, SPI_I2S_FLAG_TXE) != RESET) ? 1 : 0)); |
FreeControl | 0:3787bbf77ca8 | 12 | SPI_I2S_SendData(spi, (uint16_t)data); |
FreeControl | 0:3787bbf77ca8 | 13 | } |
FreeControl | 0:3787bbf77ca8 | 14 | |
FreeControl | 0:3787bbf77ca8 | 15 | void FastSPI::clearRX( void ) { |
FreeControl | 0:3787bbf77ca8 | 16 | int status; |
FreeControl | 0:3787bbf77ca8 | 17 | //Check if the RX buffer is busy |
FreeControl | 0:3787bbf77ca8 | 18 | SPI_TypeDef *spi = (SPI_TypeDef *)(_spi.spi); |
FreeControl | 0:3787bbf77ca8 | 19 | status = ((SPI_I2S_GetFlagStatus(spi, SPI_I2S_FLAG_BSY) != RESET) ? 1 : 0); |
FreeControl | 0:3787bbf77ca8 | 20 | if (status){ |
FreeControl | 0:3787bbf77ca8 | 21 | // Check RX buffer readable |
FreeControl | 0:3787bbf77ca8 | 22 | while (!((SPI_I2S_GetFlagStatus(spi, SPI_I2S_FLAG_RXNE) != RESET) ? 1 : 0)); |
FreeControl | 0:3787bbf77ca8 | 23 | int dummy = (int)SPI_I2S_ReceiveData(spi); |
FreeControl | 0:3787bbf77ca8 | 24 | } |
FreeControl | 0:3787bbf77ca8 | 25 | } |
FreeControl | 0:3787bbf77ca8 | 26 | #endif |
FreeControl | 0:3787bbf77ca8 | 27 |