MCUXpresso SDK API Reference Manual
Rev. 0
NXP Semiconductors
|
Data Structures | |
struct | flexio_uart_edma_handle_t |
UART eDMA handle. More... | |
Typedefs | |
typedef void(* | flexio_uart_edma_transfer_callback_t )(FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, status_t status, void *userData) |
UART transfer callback function. More... | |
Driver version | |
#define | FSL_FLEXIO_UART_EDMA_DRIVER_VERSION (MAKE_VERSION(2, 3, 0)) |
FlexIO UART EDMA driver version 2.3.0. More... | |
eDMA transactional | |
status_t | FLEXIO_UART_TransferCreateHandleEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, flexio_uart_edma_transfer_callback_t callback, void *userData, edma_handle_t *txEdmaHandle, edma_handle_t *rxEdmaHandle) |
Initializes the UART handle which is used in transactional functions. More... | |
status_t | FLEXIO_UART_TransferSendEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, flexio_uart_transfer_t *xfer) |
Sends data using eDMA. More... | |
status_t | FLEXIO_UART_TransferReceiveEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, flexio_uart_transfer_t *xfer) |
Receives data using eDMA. More... | |
void | FLEXIO_UART_TransferAbortSendEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle) |
Aborts the sent data which using eDMA. More... | |
void | FLEXIO_UART_TransferAbortReceiveEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle) |
Aborts the receive data which using eDMA. More... | |
status_t | FLEXIO_UART_TransferGetSendCountEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, size_t *count) |
Gets the number of bytes sent out. More... | |
status_t | FLEXIO_UART_TransferGetReceiveCountEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, size_t *count) |
Gets the number of bytes received. More... | |
struct _flexio_uart_edma_handle |
Data Fields | |
flexio_uart_edma_transfer_callback_t | callback |
Callback function. More... | |
void * | userData |
UART callback function parameter. More... | |
size_t | txDataSizeAll |
Total bytes to be sent. More... | |
size_t | rxDataSizeAll |
Total bytes to be received. More... | |
edma_handle_t * | txEdmaHandle |
The eDMA TX channel used. More... | |
edma_handle_t * | rxEdmaHandle |
The eDMA RX channel used. More... | |
uint8_t | nbytes |
eDMA minor byte transfer count initially configured. More... | |
volatile uint8_t | txState |
TX transfer state. More... | |
volatile uint8_t | rxState |
RX transfer state. | |
flexio_uart_edma_transfer_callback_t flexio_uart_edma_handle_t::callback |
void* flexio_uart_edma_handle_t::userData |
size_t flexio_uart_edma_handle_t::txDataSizeAll |
size_t flexio_uart_edma_handle_t::rxDataSizeAll |
edma_handle_t* flexio_uart_edma_handle_t::txEdmaHandle |
edma_handle_t* flexio_uart_edma_handle_t::rxEdmaHandle |
uint8_t flexio_uart_edma_handle_t::nbytes |
volatile uint8_t flexio_uart_edma_handle_t::txState |
#define FSL_FLEXIO_UART_EDMA_DRIVER_VERSION (MAKE_VERSION(2, 3, 0)) |
typedef void(* flexio_uart_edma_transfer_callback_t)(FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, status_t status, void *userData) |
status_t FLEXIO_UART_TransferCreateHandleEDMA | ( | FLEXIO_UART_Type * | base, |
flexio_uart_edma_handle_t * | handle, | ||
flexio_uart_edma_transfer_callback_t | callback, | ||
void * | userData, | ||
edma_handle_t * | txEdmaHandle, | ||
edma_handle_t * | rxEdmaHandle | ||
) |
base | Pointer to FLEXIO_UART_Type. |
handle | Pointer to flexio_uart_edma_handle_t structure. |
callback | The callback function. |
userData | The parameter of the callback function. |
rxEdmaHandle | User requested DMA handle for RX DMA transfer. |
txEdmaHandle | User requested DMA handle for TX DMA transfer. |
kStatus_Success | Successfully create the handle. |
kStatus_OutOfRange | The FlexIO SPI eDMA type/handle table out of range. |
status_t FLEXIO_UART_TransferSendEDMA | ( | FLEXIO_UART_Type * | base, |
flexio_uart_edma_handle_t * | handle, | ||
flexio_uart_transfer_t * | xfer | ||
) |
This function sends data using eDMA. This is a non-blocking function, which returns right away. When all data is sent out, the send callback function is called.
base | Pointer to FLEXIO_UART_Type |
handle | UART handle pointer. |
xfer | UART eDMA transfer structure, see flexio_uart_transfer_t. |
kStatus_Success | if succeed, others failed. |
kStatus_FLEXIO_UART_TxBusy | Previous transfer on going. |
status_t FLEXIO_UART_TransferReceiveEDMA | ( | FLEXIO_UART_Type * | base, |
flexio_uart_edma_handle_t * | handle, | ||
flexio_uart_transfer_t * | xfer | ||
) |
This function receives data using eDMA. This is a non-blocking function, which returns right away. When all data is received, the receive callback function is called.
base | Pointer to FLEXIO_UART_Type |
handle | Pointer to flexio_uart_edma_handle_t structure |
xfer | UART eDMA transfer structure, see flexio_uart_transfer_t. |
kStatus_Success | if succeed, others failed. |
kStatus_UART_RxBusy | Previous transfer on going. |
void FLEXIO_UART_TransferAbortSendEDMA | ( | FLEXIO_UART_Type * | base, |
flexio_uart_edma_handle_t * | handle | ||
) |
This function aborts sent data which using eDMA.
base | Pointer to FLEXIO_UART_Type |
handle | Pointer to flexio_uart_edma_handle_t structure |
void FLEXIO_UART_TransferAbortReceiveEDMA | ( | FLEXIO_UART_Type * | base, |
flexio_uart_edma_handle_t * | handle | ||
) |
This function aborts the receive data which using eDMA.
base | Pointer to FLEXIO_UART_Type |
handle | Pointer to flexio_uart_edma_handle_t structure |
status_t FLEXIO_UART_TransferGetSendCountEDMA | ( | FLEXIO_UART_Type * | base, |
flexio_uart_edma_handle_t * | handle, | ||
size_t * | count | ||
) |
This function gets the number of bytes sent out.
base | Pointer to FLEXIO_UART_Type |
handle | Pointer to flexio_uart_edma_handle_t structure |
count | Number of bytes sent so far by the non-blocking transaction. |
kStatus_NoTransferInProgress | transfer has finished or no transfer in progress. |
kStatus_Success | Successfully return the count. |
status_t FLEXIO_UART_TransferGetReceiveCountEDMA | ( | FLEXIO_UART_Type * | base, |
flexio_uart_edma_handle_t * | handle, | ||
size_t * | count | ||
) |
This function gets the number of bytes received.
base | Pointer to FLEXIO_UART_Type |
handle | Pointer to flexio_uart_edma_handle_t structure |
count | Number of bytes received so far by the non-blocking transaction. |
kStatus_NoTransferInProgress | transfer has finished or no transfer in progress. |
kStatus_Success | Successfully return the count. |