MotorWare f2806x Driver API Documentation
Data Structures | Macros | Typedefs | Enumerations | Functions
sci.h File Reference

Contains public interface to various functions related to the serial communications interface (SCI) object. More...

#include "sw/drivers/cpu/src/32b/f28x/f2806x/cpu.h"
#include "sw/modules/types/src/types.h"

Go to the source code of this file.

Data Structures

struct  _SCI_Obj_
 Defines the serial communications interface (SCI) object. More...
 

Macros

#define SCIA_BASE_ADDR   (0x00007050)
 Defines the base address of the serial communications interface (SCI) A registers. More...
 
#define SCIB_BASE_ADDR   (0x00007750)
 Defines the base address of the serial communications interface (SCI) B registers. More...
 
#define SCI_SCICCR_CHAR_LENGTH_BITS   (7 << 0)
 Defines the location of the SCICHAR2-0 bits in the SCICCR register. More...
 
#define SCI_SCICCR_MODE_BITS   (1 << 3)
 Defines the location of the ADDR/IDLE MODE bits in the SCICCR register. More...
 
#define SCI_SCICCR_LB_ENA_BITS   (1 << 4)
 Defines the location of the LOOP BACK ENA bits in the SCICCR register. More...
 
#define SCI_SCICCR_PARITY_ENA_BITS   (1 << 5)
 Defines the location of the PARITY ENABLE bits in the SCICCR register. More...
 
#define SCI_SCICCR_PARITY_BITS   (1 << 6)
 Defines the location of the EVEN/ODD PARITY bits in the SCICCR register. More...
 
#define SCI_SCICCR_STOP_BITS   (1 << 7)
 Defines the location of the STOP bits in the SCICCR register. More...
 
#define SCI_SCICTL1_RXENA_BITS   (1 << 0)
 Defines the location of the RXENA bits in the SCICTL1 register. More...
 
#define SCI_SCICTL1_TXENA_BITS   (1 << 1)
 Defines the location of the TXENA bits in the SCICTL1 register. More...
 
#define SCI_SCICTL1_SLEEP_BITS   (1 << 2)
 Defines the location of the SLEEP bits in the SCICTL1 register. More...
 
#define SCI_SCICTL1_TXWAKE_BITS   (1 << 3)
 Defines the location of the TXWAKE bits in the SCICTL1 register. More...
 
#define SCI_SCICTL1_RESET_BITS   (1 << 5)
 Defines the location of the SW RESET bits in the SCICTL1 register. More...
 
#define SCI_SCICTL1_RX_ERR_INT_ENA_BITS   (1 << 6)
 Defines the location of the RX ERR INT ENA bits in the SCICTL1 register. More...
 
#define SCI_SCICTL2_TX_INT_ENA_BITS   (1 << 0)
 Defines the location of the TX INT ENA bits in the SCICTL2 register. More...
 
#define SCI_SCICTL2_RX_INT_ENA_BITS   (1 << 1)
 Defines the location of the RX/BK INT ENA bits in the SCICTL2 register. More...
 
#define SCI_SCICTL2_TXEMPTY_BITS   (1 << 6)
 Defines the location of the TX EMPTY bits in the SCICTL2 register. More...
 
#define SCI_SCICTL2_TXRDY_BITS   (1 << 7)
 Defines the location of the RX EMPTY bits in the SCICTL2 register. More...
 
#define SCI_SCIRXST_RXWAKE_BITS   (1 << 1)
 Defines the location of the RXWAKE bits in the SCIRXST register. More...
 
#define SCI_SCIRXST_PE_BITS   (1 << 2)
 Defines the location of the PE bits in the SCIRXST register. More...
 
#define SCI_SCIRXST_OE_BITS   (1 << 3)
 Defines the location of the OE bits in the SCIRXST register. More...
 
#define SCI_SCIRXST_FE_BITS   (1 << 4)
 Defines the location of the FE bits in the SCIRXST register. More...
 
#define SCI_SCIRXST_BRKDT_BITS   (1 << 5)
 Defines the location of the BRKDT bits in the SCIRXST register. More...
 
#define SCI_SCIRXST_RXRDY_BITS   (1 << 6)
 Defines the location of the RXRDY bits in the SCIRXST register. More...
 
#define SCI_SCIRXST_RXERROR_BITS   (1 << 7)
 Defines the location of the RX ERROR bits in the SCIRXST register. More...
 
#define SCI_SCIFFRX_IL_BITS   (31 << 0)
 Defines the location of the RXFFIL4-0 bits in the SCIFFRX register. More...
 
#define SCI_SCIFFRX_IENA_BITS   ( 1 << 5)
 Defines the location of the RXFFIENA bits in the SCIFFRX register. More...
 
#define SCI_SCIFFRX_INTCLR_BITS   ( 1 << 6)
 Defines the location of the RXFFINT CLR bits in the SCIFFRX register. More...
 
#define SCI_SCIFFRX_INT_BITS   ( 1 << 7)
 Defines the location of the RXFFINT flag bits in the SCIFFRX register. More...
 
#define SCI_SCIFFRX_FIFO_ST_BITS   (31 << 8)
 Defines the location of the RXFFST4-0 bits in the SCIFFRX register. More...
 
#define SCI_SCIFFRX_FIFO_RESET_BITS   ( 1 << 13)
 Defines the location of the RXFIFO Reset bits in the SCIFFRX register. More...
 
#define SCI_SCIFFRX_FIFO_OVFCLR_BITS   ( 1 << 14)
 Defines the location of the RXFFOVF CLR bits in the SCIFFRX register. More...
 
#define SCI_SCIFFRX_FIFO_OVF_BITS   ( 1 << 15)
 Defines the location of the RXFFOVF bits in the SCIFFRX register. More...
 
#define SCI_SCIFFTX_IL_BITS   (31 << 0)
 Defines the location of the TXFFIL4-0 bits in the SCIFFTX register. More...
 
#define SCI_SCIFFTX_IENA_BITS   ( 1 << 5)
 Defines the location of the TXFFIENA bits in the SCIFFTX register. More...
 
#define SCI_SCIFFTX_INTCLR_BITS   ( 1 << 6)
 Defines the location of the TXFFINT CLR bits in the SCIFFTX register. More...
 
#define SCI_SCIFFTX_INT_BITS   ( 1 << 7)
 Defines the location of the TXFFINT flag bits in the SCIFFTX register. More...
 
#define SCI_SCIFFTX_FIFO_ST_BITS   (31 << 8)
 Defines the location of the TXFFST4-0 bits in the SCIFFTX register. More...
 
#define SCI_SCIFFTX_FIFO_RESET_BITS   ( 1 << 13)
 Defines the location of the TXFIFO Reset bits in the SCIFFTX register. More...
 
#define SCI_SCIFFTX_FIFO_ENA_BITS   ( 1 << 14)
 Defines the location of the SCIFFENA bits in the SCIFFTX register. More...
 
#define SCI_SCIFFTX_CHAN_RESET_BITS   ( 1 << 15)
 Defines the location of the SCIRST bits in the SCIFFTX register. More...
 
#define SCI_SCIFFCT_DELAY_BITS   (255 << 0)
 Defines the location of the FFTXDLY7-0 bits in the SCIFFCT register. More...
 
#define SCI_SCIFFCT_CDC_BITS   ( 1 << 13)
 Defines the location of the CDC bits in the SCIFFCT register. More...
 
#define SCI_SCIFFCT_ABDCLR_BITS   ( 1 << 14)
 Defines the location of the ABD CLR bits in the SCIFFCT register. More...
 
#define SCI_SCIFFCT_ABD_BITS   ( 1 << 15)
 Defines the location of the ABD bits in the SCIFFCT register. More...
 

Typedefs

typedef struct _SCI_Obj_ SCI_Obj
 Defines the serial communications interface (SCI) object. More...
 
typedef struct _SCI_Obj_SCI_Handle
 Defines the serial communications interface (SCI) handle. More...
 

Enumerations

enum  SCI_BaudRate_e { SCI_BaudRate_9_6_kBaud = 194, SCI_BaudRate_19_2_kBaud = 97, SCI_BaudRate_57_6_kBaud = 33, SCI_BaudRate_115_2_kBaud = 15 }
 Enumeration to define the serial communications interface (SCI) baud rates. This enumeration assume a device clock of 60Mhz and a LSPCLK of 15MHz. More...
 
enum  SCI_CharLength_e {
  SCI_CharLength_1_Bit =(0 << 0), SCI_CharLength_2_Bits =(1 << 0), SCI_CharLength_3_Bits =(2 << 0), SCI_CharLength_4_Bits =(3 << 0),
  SCI_CharLength_5_Bits =(4 << 0), SCI_CharLength_6_Bits =(5 << 0), SCI_CharLength_7_Bits =(6 << 0), SCI_CharLength_8_Bits =(7 << 0)
}
 Enumeration to define the serial communications interface (SCI) character lengths. More...
 
enum  SCI_Mode_e { SCI_Mode_IdleLine =(0 << 3), SCI_Mode_AddressBit =(1 << 3) }
 Enumeration to define the serial communications interface (SCI) multiprocessor protocol mode. More...
 
enum  SCI_NumStopBits_e { SCI_NumStopBits_One =(0 << 7), SCI_NumStopBits_Two =(1 << 7) }
 Enumeration to define the serial communications interface (SCI) number of stop bits. More...
 
enum  SCI_Parity_e { SCI_Parity_Odd =(0 << 6), SCI_Parity_Even =(1 << 6) }
 Enumeration to define the serial communications interface (SCI) parity. More...
 
enum  SCI_Priority_e { SCI_Priority_Immediate =(0 << 3), SCI_Priority_FreeRun =(1 << 3), SCI_Priority_AfterRxRxSeq =(2 << 3) }
 Enumeration to define the serial communications interface (SCI) emulation suspend priority. More...
 
enum  SCI_FifoLevel_e {
  SCI_FifoLevel_Empty =(0 << 0), SCI_FifoLevel_1_Word =(1 << 0), SCI_FifoLevel_2_Words =(2 << 0), SCI_FifoLevel_3_Words =(3 << 0),
  SCI_FifoLevel_4_Words =(4 << 0)
}
 Enumeration to define the serial communications interface (SCI) FIFO level. More...
 
enum  SCI_FifoStatus_e {
  SCI_FifoStatus_Empty =(0 << 8), SCI_FifoStatus_1_Word =(1 << 8), SCI_FifoStatus_2_Words =(2 << 8), SCI_FifoStatus_3_Words =(3 << 8),
  SCI_FifoStatus_4_Words =(4 << 8)
}
 Enumeration to define the serial communications interface (SCI) FIFO status. More...
 

Functions

void SCI_clearAutoBaudDetect (SCI_Handle sciHandle)
 Clears the auto baud detect mode. More...
 
void SCI_clearRxFifoOvf (SCI_Handle sciHandle)
 Clears the Rx FIFO overflow flag. More...
 
void SCI_clearRxFifoInt (SCI_Handle sciHandle)
 Clears the Rx FIFO interrupt flag. More...
 
void SCI_clearTxFifoInt (SCI_Handle sciHandle)
 Clears the Tx FIFO interrupt flag. More...
 
void SCI_disable (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) interrupt. More...
 
void SCI_disableAutoBaudAlign (SCI_Handle sciHandle)
 Disable the serial communications interface (SCI) auto baud alignment. More...
 
void SCI_disableLoopBack (SCI_Handle sciHandle)
 Disables the serial peripheral interface (SCI) loop back mode. More...
 
void SCI_disableParity (SCI_Handle sciHandle)
 Disable the parity. More...
 
void SCI_disableRx (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) master/slave receive mode. More...
 
void SCI_disableRxErrorInt (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) receive error interrupt. More...
 
void SCI_disableRxFifoInt (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) receive FIFO interrupt. More...
 
void SCI_disableRxInt (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) receive interrupt. More...
 
void SCI_disableSleep (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) sleep mode. More...
 
void SCI_disableTx (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) master/slave transmit mode. More...
 
void SCI_disableTxFifoEnh (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) transmit FIFO enhancements. More...
 
void SCI_disableTxFifoInt (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) transmit FIFO interrupt. More...
 
void SCI_disableTxInt (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) transmit interrupt. More...
 
void SCI_disableTxWake (SCI_Handle sciHandle)
 Disables the serial communications interface (SCI) wakeup method. More...
 
void SCI_enable (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) More...
 
void SCI_enableAutoBaudAlign (SCI_Handle sciHandle)
 Enable the serial communications interface (SCI) auto baud alignment. More...
 
void SCI_enableChannels (SCI_Handle sciHandle)
 Enable the serial communications interface (SCI) transmit and receive channels. More...
 
void SCI_enableLoopBack (SCI_Handle sciHandle)
 Enables the serial peripheral interface (SCI) loop back mode. More...
 
void SCI_enableParity (SCI_Handle sciHandle)
 Enables the serial peripheral interface (SCI) parity. More...
 
void SCI_enableRx (SCI_Handle sciHandle)
 Enables the serial peripheral interface (SCI) receiver. More...
 
void SCI_enableRxErrorInt (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) receive error interrupt. More...
 
void SCI_enableRxInt (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) receive interrupt. More...
 
void SCI_enableSleep (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) sleep mode. More...
 
void SCI_enableRxFifo (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) receive FIFO. More...
 
void SCI_enableRxFifoInt (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) receive FIFO interrupt. More...
 
void SCI_enableTx (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) masater/slave transmit mode. More...
 
void SCI_enableTxFifo (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) transmit FIFO. More...
 
void SCI_enableTxFifoEnh (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) transmit FIFO enhancements. More...
 
void SCI_enableTxFifoInt (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) transmit FIFO interrupt. More...
 
void SCI_enableTxInt (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) transmit interrupt. More...
 
void SCI_enableTxWake (SCI_Handle sciHandle)
 Enables the serial communications interface (SCI) wakeup method. More...
 
uint16_t SCI_getDataBlocking (SCI_Handle sciHandle)
 Gets data from the serial communications interface (Blocking) More...
 
uint16_t SCI_getDataNonBlocking (SCI_Handle sciHandle, uint16_t *success)
 Read data from the serial communications interface (Non-Blocking) More...
 
SCI_FifoStatus_e SCI_getRxFifoStatus (SCI_Handle sciHandle)
 Gets the serial communications interface (SCI) receive FIFO status. More...
 
SCI_FifoStatus_e SCI_getTxFifoStatus (SCI_Handle sciHandle)
 Gets the serial communications interface (SCI) transmit FIFO status. More...
 
SCI_Handle SCI_init (void *pMemory, const size_t numBytes)
 Initializes the serial communications interface (SCI) object handle. More...
 
void SCI_putDataBlocking (SCI_Handle sciHandle, uint16_t data)
 Writes data to the serial communications interface (Blocking) More...
 
uint16_t SCI_putDataNonBlocking (SCI_Handle sciHandle, uint16_t data)
 Writes data to the serial communications interface (Non-Blocking) More...
 
static uint16_t SCI_read (SCI_Handle sciHandle)
 Reads data from the serial communications interface (SCI) More...
 
void SCI_reset (SCI_Handle sciHandle)
 Resets the serial communications interface (SCI) More...
 
void SCI_resetChannels (SCI_Handle sciHandle)
 Resets the serial communications interface (SCI) transmit and receive channels. More...
 
void SCI_resetRxFifo (SCI_Handle sciHandle)
 Resets the serial communications interface (SCI) receive FIFO. More...
 
void SCI_resetTxFifo (SCI_Handle sciHandle)
 Resets the serial communications interface (SCI) transmit FIFO. More...
 
static bool SCI_rxDataReady (SCI_Handle sciHandle)
 Determines if the serial communications interface (SCI) has receive data ready. More...
 
void SCI_setBaudRate (SCI_Handle sciHandle, const SCI_BaudRate_e baudRate)
 Sets the serial communications interface (SCI) baud rate. More...
 
void SCI_setCharLength (SCI_Handle sciHandle, const SCI_CharLength_e charLength)
 Sets the serial communications interface (SCI) character length. More...
 
void SCI_setMode (SCI_Handle sciHandle, const SCI_Mode_e mode)
 Sets the serial communications interface (SCI) miltprocessor mode. More...
 
void SCI_setNumStopBits (SCI_Handle sciHandle, const SCI_NumStopBits_e numBits)
 Sets the serial communications interface (SCI) number of stop bits. More...
 
void SCI_setPriority (SCI_Handle sciHandle, const SCI_Priority_e priority)
 Sets the serial communications interface (SCI) priority. More...
 
void SCI_setParity (SCI_Handle sciHandle, const SCI_Parity_e parity)
 Sets the serial communications interface (SCI) parity. More...
 
void SCI_setTxDelay (SCI_Handle sciHandle, const uint_least8_t delay)
 Sets the serial communications interface (SCI) transmit delay. More...
 
void SCI_setTxFifoIntLevel (SCI_Handle sciHandle, const SCI_FifoLevel_e fifoLevel)
 Sets the serial communications interface (SCI) transmit FIFO level for generating an interrupt. More...
 
void SCI_setRxFifoIntLevel (SCI_Handle sciHandle, const SCI_FifoLevel_e fifoLevel)
 Sets the serial communications interface (SCI) receive FIFO level for generating an interrupt. More...
 
static bool SCI_txReady (SCI_Handle sciHandle)
 Determines if the serial communications interface (SCI) is ready to transmit. More...
 
static void SCI_write (SCI_Handle sciHandle, const uint16_t data)
 Writes data to the serial communications interface (SCI) More...
 

Detailed Description

Contains public interface to various functions related to the serial communications interface (SCI) object.

(C) Copyright 2015, Texas Instruments, Inc.

Definition in file sci.h.