7 #ifndef __MSP430WARE_USCI_A_SPI_H__
8 #define __MSP430WARE_USCI_A_SPI_H__
10 #include "inc/hw_memmap.h"
12 #ifdef __MSP430_HAS_USCI_Ax__
25 #include "inc/hw_memmap.h"
79 #define USCI_A_SPI_PHASE_DATA_CHANGED_ONFIRST_CAPTURED_ON_NEXT 0x00
80 #define USCI_A_SPI_PHASE_DATA_CAPTURED_ONFIRST_CHANGED_ON_NEXT UCCKPH
89 #define USCI_A_SPI_MSB_FIRST UCMSB
90 #define USCI_A_SPI_LSB_FIRST 0x00
100 #define USCI_A_SPI_CLOCKPOLARITY_INACTIVITY_HIGH UCCKPL
101 #define USCI_A_SPI_CLOCKPOLARITY_INACTIVITY_LOW 0x00
109 #define USCI_A_SPI_CLOCKSOURCE_ACLK UCSSEL__ACLK
110 #define USCI_A_SPI_CLOCKSOURCE_SMCLK UCSSEL__SMCLK
120 #define USCI_A_SPI_TRANSMIT_INTERRUPT UCTXIE
121 #define USCI_A_SPI_RECEIVE_INTERRUPT UCRXIE
129 #define USCI_A_SPI_BUSY UCBUSY
130 #define USCI_A_SPI_NOT_BUSY 0x00
207 uint8_t clockPolarity);
232 uint8_t clockPolarity);
248 uint8_t transmitData);
436 #endif // __MSP430WARE_USCI_A_SPI_H__
uint32_t clockSourceFrequency
Is the frequency of the selected clock source.
Definition: usci_a_spi.h:65
uint32_t clockSourceFrequency
Is the frequency of the selected clock source.
Definition: usci_a_spi.h:38
void USCI_A_SPI_changeClockPhasePolarity(uint16_t baseAddress, uint8_t clockPhase, uint8_t clockPolarity)
Changes the SPI clock phase and polarity.At the end of this function call, SPI module is left enabled...
Definition: usci_a_spi.c:102
uint8_t USCI_A_SPI_receiveData(uint16_t baseAddress)
Receives a byte that has been sent to the SPI Module.
Definition: usci_a_spi.c:129
uint32_t USCI_A_SPI_getReceiveBufferAddressForDMA(uint16_t baseAddress)
Returns the address of the RX Buffer of the SPI for the DMA module.
Definition: usci_a_spi.c:174
uint8_t selectClockSource
Definition: usci_a_spi.h:36
uint8_t USCI_A_SPI_getInterruptStatus(uint16_t baseAddress, uint8_t mask)
Gets the current SPI interrupt status.
Definition: usci_a_spi.c:148
void USCI_A_SPI_enable(uint16_t baseAddress)
Enables the SPI block.
Definition: usci_a_spi.c:162
void USCI_A_SPI_transmitData(uint16_t baseAddress, uint8_t transmitData)
Transmits a byte from the SPI Module.
Definition: usci_a_spi.c:122
void USCI_A_SPI_clearInterrupt(uint16_t baseAddress, uint8_t mask)
Clears the selected SPI interrupt status flag.
Definition: usci_a_spi.c:155
bool USCI_A_SPI_initSlave(uint16_t baseAddress, uint8_t msbFirst, uint8_t clockPhase, uint8_t clockPolarity)
Initializes the SPI Slave block.
Definition: usci_a_spi.c:72
uint8_t USCI_A_SPI_isBusy(uint16_t baseAddress)
Indicates whether or not the SPI bus is busy.
Definition: usci_a_spi.c:184
Used in the USCI_A_SPI_initMaster() function as the param parameter.
Definition: usci_a_spi.h:31
uint8_t clockPhase
Definition: usci_a_spi.h:50
uint32_t desiredSpiClock
Is the desired clock rate for SPI communication.
Definition: usci_a_spi.h:40
uint32_t USCI_A_SPI_getTransmitBufferAddressForDMA(uint16_t baseAddress)
Returns the address of the TX Buffer of the SPI for the DMA module.
Definition: usci_a_spi.c:179
void USCI_A_SPI_disable(uint16_t baseAddress)
Disables the SPI block.
Definition: usci_a_spi.c:168
uint8_t msbFirst
Definition: usci_a_spi.h:45
Used in the USCI_A_SPI_changeMasterClock() function as the param parameter.
Definition: usci_a_spi.h:63
void USCI_A_SPI_disableInterrupt(uint16_t baseAddress, uint8_t mask)
Disables individual SPI interrupt sources.
Definition: usci_a_spi.c:141
uint32_t desiredSpiClock
Is the desired clock rate for SPI communication.
Definition: usci_a_spi.h:67
uint8_t clockPolarity
Definition: usci_a_spi.h:54
void USCI_A_SPI_enableInterrupt(uint16_t baseAddress, uint8_t mask)
Enables individual SPI interrupt sources.
Definition: usci_a_spi.c:134
bool USCI_A_SPI_initMaster(uint16_t baseAddress, USCI_A_SPI_initMasterParam *param)
Initializes the SPI Master block.
Definition: usci_a_spi.c:21
void USCI_A_SPI_changeMasterClock(uint16_t baseAddress, USCI_A_SPI_changeMasterClockParam *param)
Initializes the SPI Master clock.At the end of this function call, SPI module is left enabled...
Definition: usci_a_spi.c:60