#include <stdbool.h>
#include <stdint.h>
#include <inc/hw_memmap.h>
#include <inc/hw_types.h>
#include <inc/hw_ints.h>
#include <inc/hw_spis.h>
#include <driverlib/debug.h>
#include <driverlib/interrupt.h>
Go to the source code of this file.
Macros | |
#define | TX_FIFO_SIZE 16 |
#define | RX_FIFO_SIZE 16 |
#define | SPIS_POS_CLK_POL 0x00000001 |
#define | SPIS_NEG_CLK_POL 0x00000000 |
#define | SPIS_TX_BIG_ENDIAN 0x00000002 |
#define | SPIS_TX_LITTLE_ENDIAN 0x00000000 |
#define | SPIS_RX_BIG_ENDIAN 0x00000004 |
#define | SPIS_RX_LITTLE_ENDIAN 0x00000000 |
#define | SPIS_TX_DMA_SINGLE 0x00000008 |
#define | SPIS_TX_DMA_BURST 0x00000000 |
#define | SPIS_RX_DMA_SINGLE 0x00000010 |
#define | SPIS_RX_DMA_BURST 0x00000000 |
#define | SPIS_TX_FULL 0x00000001 |
#define | SPIS_TX_EMPTY 0x00000002 |
#define | SPIS_TX_GE_WATERMARK 0x00000004 |
#define | SPIS_TX_LE_WATERMARK 0x00000008 |
#define | SPIS_TX_HASDATA 0x00000010 |
#define | SPIS_TX_UNDER_FLOW 0x00000020 |
#define | SPIS_TX_OVER_FLOW 0x00000040 |
#define | SPIS_TX_MASK 0x0000007F |
#define | SPIS_RX_FULL 0x00000100 |
#define | SPIS_RX_EMPTY 0x00000200 |
#define | SPIS_RX_GE_WATERMARK 0x00000400 |
#define | SPIS_RX_LE_WATERMARK 0x00000800 |
#define | SPIS_RX_HASDATA 0x00001000 |
#define | SPIS_RX_UNDER_FLOW 0x00002000 |
#define | SPIS_RX_OVER_FLOW 0x00004000 |
#define | SPIS_RX_MASK 0x00007F00 |
#define | SPIS_CHIP_SELECT 0x00010000 |
#define | SPIS_INCOMPLETE 0x00020000 |
#define | SPIS_PRX_OVERFLOW 0x00040000 |
#define | SPIS_BYTE_DONE 0x00080000 |
#define | SPIS_DMA_DONE_TX 0x00100000 |
#define | SPIS_DMA_DONE_RX 0x00200000 |
#define | SPIS_GP_MASK 0x003F0000 |
#define | SPIS_TX_DMA_FULL ( SPIS_TXFEVSRC_SEL_FULL ) |
#define | SPIS_TX_DMA_EMPTY ( SPIS_TXFEVSRC_SEL_EMPTY ) |
#define | SPIS_TX_DMA_GE_WMARK ( SPIS_TXFEVSRC_SEL_GE_THR ) |
#define | SPIS_TX_DMA_LE_WMARK ( SPIS_TXFEVSRC_SEL_LE_THR ) |
#define | SPIS_TX_DMA_HASDATA ( SPIS_TXFEVSRC_SEL_NOT_EMPTY ) |
#define | SPIS_TX_DMA_ALWAYS ( SPIS_TXFEVSRC_SEL_ONE ) |
#define | SPIS_TX_DMA_NONE ( SPIS_TXFEVSRC_SEL_ZERO ) |
#define | SPIS_RX_DMA_FULL (( SPIS_RXFEVSRC_SEL_FULL ) << 8 ) |
#define | SPIS_RX_DMA_EMPTY (( SPIS_RXFEVSRC_SEL_EMPTY ) << 8 ) |
#define | SPIS_RX_DMA_GE_WMARK (( SPIS_RXFEVSRC_SEL_GE_THR ) << 8 ) |
#define | SPIS_RX_DMA_LE_WMARK (( SPIS_RXFEVSRC_SEL_LE_THR ) << 8 ) |
#define | SPIS_RX_DMA_HASDATA (( SPIS_RXFEVSRC_SEL_NOT_EMPTY ) << 8 ) |
#define | SPIS_RX_DMA_ALWAYS (( SPIS_RXFEVSRC_SEL_ONE ) << 8 ) |
#define | SPIS_RX_DMA_NONE (( SPIS_RXFEVSRC_SEL_ZERO ) << 8 ) |
Functions | |
__STATIC_INLINE void | SPISConfig (uint32_t ui32Config, uint32_t ui32RxWatermark, uint32_t ui32TxWatermark) |
Configures the SPIS module. More... | |
void | SPISDataPut (uint32_t ui32Data) |
Puts a data element into the SPIS transmit FIFO. More... | |
__STATIC_INLINE int32_t | SPISDataPutNonBlocking (uint32_t ui32Data) |
Puts a data element into the SPIS transmit FIFO. More... | |
__STATIC_INLINE void | SPISTxFlush (void) |
Flush the Tx FIFO. More... | |
__STATIC_INLINE uint32_t | SPISTxGetNumBytes (void) |
Get the current number of data elements in the TX FIFO. More... | |
uint32_t | SPISTxGetValue (uint32_t ui32Index) |
Get a specific value in the Tx FIFO. More... | |
void | SPISDataGet (uint32_t *pui32Data) |
Gets a data element from the SPIS Rx FIFO. More... | |
__STATIC_INLINE int32_t | SPISDataGetNonBlocking (uint32_t *pui32Data) |
Gets a data element in a non-blocking fashion from the SPIS receive FIFO. More... | |
__STATIC_INLINE void | SPISRxFlush (void) |
Flush the Rx FIFO. More... | |
__STATIC_INLINE uint32_t | SPISRxGetNumBytes (void) |
Get the current number of bytes in the RX FIFO. More... | |
uint32_t | SPISRxGetValue (uint32_t ui32Index) |
Get a specific value in the Rx FIFO. More... | |
__STATIC_INLINE bool | SPISBusy (void) |
Determines whether the SPIS transmitter is busy or not. More... | |
__STATIC_INLINE void | SPISIntEnable (uint32_t ui32IntFlags) |
Enables individual SPIS interrupt sources. More... | |
__STATIC_INLINE void | SPISIntDisable (uint32_t ui32IntFlags) |
Disables individual SPIS interrupt sources. More... | |
__STATIC_INLINE void | SPISIntClear (uint32_t ui32IntFlags) |
Clears SPIS interrupt sources. More... | |
uint32_t | SPISIntStatus (bool bMasked) |
Gets the current interrupt status. More... | |
__STATIC_INLINE void | SPISIntRegister (void(*pfnHandler)(void)) |
Registers an interrupt handler for the Serial Peripheral Interface Slave. More... | |
__STATIC_INLINE void | SPISIntUnregister (void) |
Unregisters an interrupt handler for the Serial Peripheral Interface Slave. More... | |
__STATIC_INLINE void | SPISDmaEnable (uint32_t ui32DMASetting) |
Enable SPIS DMA operation by setting event source. More... | |
__STATIC_INLINE void | SPISDmaDisable (void) |
Disable SPIS DMA operation. More... | |