Fast SPI write, added LPC812 Target
Fork of BurstSPI by
Diff: BurstSPI_LPC_X.cpp
- Revision:
- 9:b69faea5252c
- Child:
- 14:83e3b8ba3f43
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/BurstSPI_LPC_X.cpp Tue Oct 07 09:00:51 2014 +0000 @@ -0,0 +1,20 @@ +#if defined(TARGET_LPC1768) || defined(TARGET_LPC1114) || defined(TARGET_LPC11U24) || defined(TARGET_LPC13XX) +#include "BurstSPI.h" + +void BurstSPI::fastWrite(int data) { + //Wait until FIFO has space + while(((_spi.spi->SR) & 0x02) == 0); + + //transmit data + _spi.spi->DR = data; + } + +void BurstSPI::clearRX( void ) { + //Do it while either data in RX buffer, or while it is busy + while(((_spi.spi->SR) & ((1<<4) + (1<<2))) != 0) { + //Wait until data in RX buffer + while(((_spi.spi->SR) & (1<<2)) == 0); + int dummy = _spi.spi->DR; + } +} +#endif \ No newline at end of file