UART driver implementation for a CC32XX UART controller, using the micro DMA controller.
============================================================================
The UART header file should be included in an application as follows:
Refer to UART.h for a complete description of APIs & example of use.
This header file contains pin mode definitions used to specify the UART TX and RX pin assignment in the UARTCC32XXDMA_HWAttrsV1 structure. Please refer to the CC32XX Techincal Reference Manual for details on pin multiplexing.
To enable Flow Control, the RTS and CTS pins must be assigned in the UARTCC32XX_HWAttrsV1.
#include <stdint.h>
#include <stdbool.h>
#include <ti/drivers/dpl/ClockP.h>
#include <ti/drivers/dpl/HwiP.h>
#include <ti/drivers/dpl/SemaphoreP.h>
#include <ti/drivers/Power.h>
#include <ti/drivers/power/PowerCC32XX.h>
#include <ti/drivers/UART.h>
#include <ti/drivers/dma/UDMACC32XX.h>
Go to the source code of this file.
Data Structures | |
struct | UARTCC32XXDMA_HWAttrsV1 |
UARTCC32XXDMA Hardware attributes. More... | |
struct | UARTCC32XXDMA_Object |
UARTCC32XXDMA Object. More... | |
Typedefs | |
typedef void(* | UARTCC32XXDMA_ErrorCallback) (UART_Handle handle, uint32_t error) |
The definition of an optional callback function used by the UART driver to notify the application when a receive error (FIFO overrun, parity error, etc) occurs. More... | |
typedef struct UARTCC32XXDMA_Object * | UARTCC32XXDMA_Handle |
Variables | |
const UART_FxnTable | UARTCC32XXDMA_fxnTable |
#define UARTCC32XXDMA_PIN_UNASSIGNED 0xFFF |
Indicates a pin is not being used.
If hardware flow control is not being used, the UART CTS and RTS pins should be set to UARTCC32XX_PIN_UNASSIGNED.
#define UARTCC32XXDMA_PIN_01_UART1_TX 0x700 |
PIN 1 is used for UART1 TX
#define UARTCC32XXDMA_PIN_02_UART1_RX 0x701 |
PIN 2 is used for UART1 RX
#define UARTCC32XXDMA_PIN_03_UART0_TX 0x702 |
PIN 3 is used for UART0 TX
#define UARTCC32XXDMA_PIN_04_UART0_RX 0x703 |
PIN 4 is used for UART0 RX
#define UARTCC32XXDMA_PIN_07_UART1_TX 0x506 |
PIN 7 is used for UART1 TX
#define UARTCC32XXDMA_PIN_08_UART1_RX 0x507 |
PIN 8 is used for UART1 RX
#define UARTCC32XXDMA_PIN_16_UART1_TX 0x20F |
PIN 16 is used for UART1 TX
#define UARTCC32XXDMA_PIN_17_UART1_RX 0x210 |
PIN 17 is used for UART1 RX
#define UARTCC32XXDMA_PIN_45_UART0_RX 0x92C |
PIN 45 is used for UART0 RX
#define UARTCC32XXDMA_PIN_45_UART1_RX 0x22C |
PIN 45 is used for UART1 RX
#define UARTCC32XXDMA_PIN_53_UART0_TX 0x934 |
PIN 53 is used for UART0 TX
#define UARTCC32XXDMA_PIN_55_UART0_TX 0x336 |
PIN 55 is used for UART0 TX
#define UARTCC32XXDMA_PIN_55_UART1_TX 0x636 |
PIN 55 is used for UART1 TX
#define UARTCC32XXDMA_PIN_57_UART0_RX 0x338 |
PIN 57 is used for UART0 RX
#define UARTCC32XXDMA_PIN_57_UART1_RX 0x638 |
PIN 57 is used for UART1 RX
#define UARTCC32XXDMA_PIN_58_UART1_TX 0x639 |
PIN 58 is used for UART1 TX
#define UARTCC32XXDMA_PIN_59_UART1_RX 0x63A |
PIN 59 is used for UART1 RX
#define UARTCC32XXDMA_PIN_62_UART0_TX 0xB3D |
PIN 62 is used for UART0 TX
#define UARTCC32XXDMA_PIN_50_UART0_CTS 0xC31 |
PIN 50 is used for UART0 CTS
#define UARTCC32XXDMA_PIN_50_UART0_RTS 0x331 |
PIN 50 is used for UART0 RTS
#define UARTCC32XXDMA_PIN_50_UART1_RTS 0xA31 |
PIN 50 is used for UART1 RTS
#define UARTCC32XXDMA_PIN_52_UART0_RTS 0x633 |
PIN 52 is used for UART0 RTS
#define UARTCC32XXDMA_PIN_61_UART0_RTS 0x53C |
PIN 61 is used for UART0 RTS
#define UARTCC32XXDMA_PIN_61_UART0_CTS 0x63C |
PIN 61 is used for UART0 CTS
#define UARTCC32XXDMA_PIN_61_UART1_CTS 0x33C |
PIN 61 is used for UART1 CTS
#define UARTCC32XXDMA_PIN_62_UART0_RTS 0xA3D |
PIN 62 is used for UART0 RTS
#define UARTCC32XXDMA_PIN_62_UART1_RTS 0x33D |
PIN 62 is used for UART1 RTS
#define UARTCC32XXDMA_FLOWCTRL_NONE 0 |
No hardware flow control.
#define UARTCC32XXDMA_FLOWCTRL_HARDWARE 1 |
Hardware flow control.
typedef void(* UARTCC32XXDMA_ErrorCallback) (UART_Handle handle, uint32_t error) |
The definition of an optional callback function used by the UART driver to notify the application when a receive error (FIFO overrun, parity error, etc) occurs.
UART_Handle | UART_Handle |
error | The current value of the receive status register. Please refer to the device data sheet to interpret this value. |
typedef struct UARTCC32XXDMA_Object * UARTCC32XXDMA_Handle |
const UART_FxnTable UARTCC32XXDMA_fxnTable |