![]() |
MCUXpresso SDK API Reference Manual
Rev. 0
NXP Semiconductors
|
Data Structures | |
| struct | hal_uart_config_t |
| UART configuration structure. More... | |
| struct | hal_uart_transfer_t |
| UART transfer structure. More... | |
Macros | |
| #define | UART_ADAPTER_NON_BLOCKING_MODE (0U) |
| Enable or disable UART adapter non-blocking mode (1 - enable, 0 - disable) | |
| #define | HAL_UART_TRANSFER_MODE (0U) |
| Whether enable transactional function of the UART. More... | |
Typedefs | |
| typedef void(* | hal_uart_transfer_callback_t )(hal_uart_handle_t handle, hal_uart_status_t status, void *callbackParam) |
| UART transfer callback function. More... | |
Enumerations | |
| enum | hal_uart_status_t { kStatus_HAL_UartSuccess = kStatus_Success, kStatus_HAL_UartTxBusy = MAKE_STATUS(kStatusGroup_HAL_UART, 1), kStatus_HAL_UartRxBusy = MAKE_STATUS(kStatusGroup_HAL_UART, 2), kStatus_HAL_UartTxIdle = MAKE_STATUS(kStatusGroup_HAL_UART, 3), kStatus_HAL_UartRxIdle = MAKE_STATUS(kStatusGroup_HAL_UART, 4), kStatus_HAL_UartBaudrateNotSupport, kStatus_HAL_UartProtocolError, kStatus_HAL_UartError = MAKE_STATUS(kStatusGroup_HAL_UART, 7) } |
| UART status. More... | |
| enum | hal_uart_parity_mode_t { kHAL_UartParityDisabled = 0x0U, kHAL_UartParityEven = 0x1U, kHAL_UartParityOdd = 0x2U } |
| UART parity mode. More... | |
| enum | hal_uart_stop_bit_count_t { kHAL_UartOneStopBit = 0U, kHAL_UartTwoStopBit = 1U } |
| UART stop bit count. More... | |
Initialization and deinitialization | |
| hal_uart_status_t | HAL_UartInit (hal_uart_handle_t handle, hal_uart_config_t *config) |
| Initializes a UART instance with the UART handle and the user configuration structure. More... | |
| hal_uart_status_t | HAL_UartDeinit (hal_uart_handle_t handle) |
| Deinitializes a UART instance. More... | |
Blocking bus Operations | |
| hal_uart_status_t | HAL_UartReceiveBlocking (hal_uart_handle_t handle, uint8_t *data, size_t length) |
| Reads RX data register using a blocking method. More... | |
| hal_uart_status_t | HAL_UartSendBlocking (hal_uart_handle_t handle, const uint8_t *data, size_t length) |
| Writes to the TX register using a blocking method. More... | |
| struct hal_uart_config_t |
Data Fields | |
| uint32_t | srcClock_Hz |
| Source clock. | |
| uint32_t | baudRate_Bps |
| Baud rate. | |
| hal_uart_parity_mode_t | parityMode |
| Parity mode, disabled (default), even, odd. | |
| hal_uart_stop_bit_count_t | stopBitCount |
| Number of stop bits, 1 stop bit (default) or 2 stop bits. | |
| uint8_t | enableRx |
| Enable RX. | |
| uint8_t | enableTx |
| Enable TX. | |
| uint8_t | instance |
| Instance (0 - UART0, 1 - UART1, ...), detail information please refer to the SOC corresponding RM. More... | |
| uint8_t hal_uart_config_t::instance |
Invalid instance value will cause initialization failure.
| struct hal_uart_transfer_t |
| #define HAL_UART_TRANSFER_MODE (0U) |
(0 - disable, 1 - enable)
| typedef void(* hal_uart_transfer_callback_t)(hal_uart_handle_t handle, hal_uart_status_t status, void *callbackParam) |
| enum hal_uart_status_t |
| hal_uart_status_t HAL_UartInit | ( | hal_uart_handle_t | handle, |
| hal_uart_config_t * | config | ||
| ) |
This function configures the UART module with user-defined settings. The user can configure the configuration structure. The parameter handle is a pointer to point to a memory space of size #HAL_UART_HANDLE_SIZE allocated by the caller. Example below shows how to use this API to configure the UART.
| handle | Pointer to point to a memory space of size #HAL_UART_HANDLE_SIZE allocated by the caller. |
| config | Pointer to user-defined configuration structure. |
| kStatus_HAL_UartBaudrateNotSupport | Baudrate is not support in current clock source. |
| kStatus_HAL_UartSuccess | UART initialization succeed |
| hal_uart_status_t HAL_UartDeinit | ( | hal_uart_handle_t | handle | ) |
This function waits for TX complete, disables TX and RX, and disables the UART clock.
| handle | UART handle pointer. |
| kStatus_HAL_UartSuccess | UART de-initialization succeed |
| hal_uart_status_t HAL_UartReceiveBlocking | ( | hal_uart_handle_t | handle, |
| uint8_t * | data, | ||
| size_t | length | ||
| ) |
This function polls the RX register, waits for the RX register to be full or for RX FIFO to have data, and reads data from the RX register.
| handle | UART handle pointer. |
| data | Start address of the buffer to store the received data. |
| length | Size of the buffer. |
| kStatus_HAL_UartError | An error occurred while receiving data. |
| kStatus_HAL_UartParityError | A parity error occurred while receiving data. |
| kStatus_HAL_UartSuccess | Successfully received all data. |
| hal_uart_status_t HAL_UartSendBlocking | ( | hal_uart_handle_t | handle, |
| const uint8_t * | data, | ||
| size_t | length | ||
| ) |
This function polls the TX register, waits for the TX register to be empty or for the TX FIFO to have room and writes data to the TX buffer.
| handle | UART handle pointer. |
| data | Start address of the data to write. |
| length | Size of the data to write. |
| kStatus_HAL_UartSuccess | Successfully sent all data. |