|
void | uart_rx_init (uart_rx_t *uart, port_t rx_port, uint32_t baud_rate, uint8_t data_bits, uart_parity_t parity, uint8_t stop_bits, hwtimer_t tmr, uint8_t *rx_buff, size_t buffer_size_plus_one, void(*uart_rx_complete_callback_fptr)(void *app_data), void(*uart_rx_error_callback_fptr)(uart_callback_code_t callback_code, void *app_data), void *app_data) |
|
void | uart_rx_blocking_init (uart_rx_t *uart, port_t rx_port, uint32_t baud_rate, uint8_t data_bits, uart_parity_t parity, uint8_t stop_bits, hwtimer_t tmr, void(*uart_rx_error_callback_fptr)(uart_callback_code_t callback_code, void *app_data), void *app_data) |
|
uint8_t | uart_rx (uart_rx_t *uart) |
|
void | uart_rx_deinit (uart_rx_t *uart) |
|
The public API for using the HIL UART Rx module.
◆ uart_rx()
Receives a single UART frame with parameters as specified in uart_rx_init()
- Parameters
-
- Returns
- The word received in the UART frame. In buffered mode it gets the oldest received word.
◆ uart_rx_blocking_init()
void uart_rx_blocking_init |
( |
uart_rx_t * |
uart, |
|
|
port_t |
rx_port, |
|
|
uint32_t |
baud_rate, |
|
|
uint8_t |
data_bits, |
|
|
uart_parity_t |
parity, |
|
|
uint8_t |
stop_bits, |
|
|
hwtimer_t |
tmr, |
|
|
void(*)(uart_callback_code_t callback_code, void *app_data) |
uart_rx_error_callback_fptr, |
|
|
void * |
app_data |
|
) |
| |
Initializes a UART Rx I/O interface. This API is fixed to blocking mode which is where the call to uart_rx returns as soon as the stop bit has been sampled.
- Parameters
-
uart | The uart_rx_t context to initialise. |
rx_port | The port used receive the UART frames. |
baud_rate | The baud rate of the UART in bits per second. |
data_bits | The number of data bits per frame sent. |
parity | The type of parity used. See uart_parity_t above. |
stop_bits | The number of stop bits asserted at the of the frame. |
tmr | The resource id of the timer to be used. Polling mode will be used if set to 0. |
uart_rx_error_callback_fptr | Callback function pointer for UART rx errors The error is contained in cb_code in the uart_rx_t struct. |
app_data | A pointer to application specific data provided by the application. Used to share data between the error callback function and the application. |
◆ uart_rx_deinit()
De-initializes the specified UART Rx interface. This disables the port also. The timer, if used, needs to be freed by the application.
- Parameters
-
◆ uart_rx_init()
void uart_rx_init |
( |
uart_rx_t * |
uart, |
|
|
port_t |
rx_port, |
|
|
uint32_t |
baud_rate, |
|
|
uint8_t |
data_bits, |
|
|
uart_parity_t |
parity, |
|
|
uint8_t |
stop_bits, |
|
|
hwtimer_t |
tmr, |
|
|
uint8_t * |
rx_buff, |
|
|
size_t |
buffer_size_plus_one, |
|
|
void(*)(void *app_data) |
uart_rx_complete_callback_fptr, |
|
|
void(*)(uart_callback_code_t callback_code, void *app_data) |
uart_rx_error_callback_fptr, |
|
|
void * |
app_data |
|
) |
| |
Initializes a UART Rx I/O interface. Passing a valid buffer will enable buffered mode with ISR for use in bare-metal applications.
- Parameters
-
uart | The uart_rx_t context to initialise. |
rx_port | The port used receive the UART frames. |
baud_rate | The baud rate of the UART in bits per second. |
data_bits | The number of data bits per frame sent. |
parity | The type of parity used. See uart_parity_t above. |
stop_bits | The number of stop bits asserted at the of the frame. |
tmr | The resource id of the timer to be used. Polling mode will be used if set to 0. |
rx_buff | Pointer to a buffer. Optional. If set to zero the UART will run in blocking mode. If initialised to a valid buffer, the UART will be interrupt driven. |
buffer_size_plus_one | Size of the buffer if enabled in rx_buff. Note that the buffer allocation and size argument must be one greater than needed. Eg. buff[65] for a 64 byte buffer. |
uart_rx_complete_callback_fptr | Callback function pointer for UART rx complete (one word) in buffered mode only. Optionally NULL. |
uart_rx_error_callback_fptr | Callback function pointer for UART rx errors The error is contained in cb_code in the uart_rx_t struct. |
app_data | A pointer to application specific data provided by the application. Used to share data between this callback function and the application. |