34#ifndef _FREERTOS_DRIVERS_TI_CC32XXUART_HXX_
35#define _FREERTOS_DRIVERS_TI_CC32XXUART_HXX_
45#include "driverlib/uart.h"
56 CS5 = UART_CONFIG_WLEN_5,
57 CS6 = UART_CONFIG_WLEN_6,
58 CS7 = UART_CONFIG_WLEN_7,
59 CS8 = UART_CONFIG_WLEN_8,
76 CC32xxUart(
const char *
name,
unsigned long base, uint32_t interrupt,
77 uint32_t baud = 115200, uint32_t mode =
CS8,
bool hw_fifo =
true,
94 int ioctl(
File *file,
unsigned long int key,
unsigned long data)
override;
Specialization of Serial driver for CC32xx UART.
uint8_t txPending_
transmission currently pending
void disable() override
function to disable device
Notifiable * txComplete_
Notifiable to invoke when the transmit engine has finished operation.
void tx_char() override
Try and transmit a message.
uint8_t hwFIFO_
true if hardware fifo is to be enabled, else false
CC32xxUart()
Default constructor.
unsigned long base_
base address of this device
TxEnableMethod txEnableAssert_
function pointer to a method that asserts the transmit enable.
void send()
Send data until there is no more space left.
uint32_t interrupt_
interrupt of this device
@ CSTOPB
send two stop bits instead of 1
uint32_t baud_
desired baud rate
void set_mode()
Sets the port baud rate and mode from the class variables.
uint8_t nineBit_
true if using 9-bit reception
uint32_t uartMode_
mode of the UART, 8 or 9 bit, 1 or 2 stop...
TxEnableMethod txEnableDeassert_
function pointer to a method that deasserts the transmit enable.
int ioctl(File *file, unsigned long int key, unsigned long data) override
Request an ioctl transaction.
void enable() override
function to enable device
void interrupt_handler()
handle an interrupt.
void(* TxEnableMethod)()
Function point for the tx enable assert and deassert methods.
const char * name
device name
An object that can schedule itself on an executor to run.
Private data for a serial device.
#define DISALLOW_COPY_AND_ASSIGN(TypeName)
Removes default copy-constructor and assignment added by C++.