rusEFI
The most advanced open source ECU
|
Data Structures | |
struct | UARTConfig |
Driver configuration structure. More... | |
struct | UARTDriver |
Structure representing an UART driver. More... | |
Typedefs | |
typedef uint32_t | uartflags_t |
UART driver condition flags type. | |
typedef struct UARTDriver | UARTDriver |
Structure representing an UART driver. | |
typedef void(* | uartcb_t) (UARTDriver *uartp) |
Generic UART notification callback type. | |
typedef void(* | uartccb_t) (UARTDriver *uartp, uint16_t c) |
Character received UART notification callback type. | |
typedef void(* | uartecb_t) (UARTDriver *uartp, uartflags_t e) |
Receive error UART notification callback type. | |
typedef void(* | uarthcb_t) (UARTDriver *uartp, uartflags_t full) |
Receive Half-transfer UART notification callback type. | |
Functions | |
static void | uart_enter_rx_idle_loop (UARTDriver *uartp) |
Puts the receiver in the UART_RX_IDLE state. | |
void | uart_lld_callback (LPUART_Type *base, void *handle, status_t status, void *userData) |
void | uart_lld_init (void) |
Low level UART driver initialization. | |
void | uart_lld_start (UARTDriver *uartp) |
Configures and activates the UART peripheral. | |
void | uart_lld_stop (UARTDriver *uartp) |
Deactivates the UART peripheral. | |
void | uart_lld_start_send (UARTDriver *uartp, size_t n, const void *txbuf) |
Starts a transmission on the UART peripheral. | |
size_t | uart_lld_stop_send (UARTDriver *uartp) |
Stops any ongoing transmission. | |
void | uart_lld_start_receive (UARTDriver *uartp, size_t n, void *rxbuf) |
Starts a receive operation on the UART peripheral. | |
size_t | uart_lld_stop_receive (UARTDriver *uartp) |
Stops any ongoing receive operation. | |
void | uart_lld_blocking_send (UARTDriver *uartp, size_t n, const void *txbuf) |
Variables | |
UARTDriver | UARTD1 |
UART1 driver identifier. | |
UARTDriver | UARTD2 |
UARTDriver | UARTD3 |
UARTDriver | UARTD1 |
UART1 driver identifier. | |
UARTDriver | UARTD2 |
UARTDriver | UARTD3 |
typedef void(* uartcb_t) (UARTDriver *uartp) |
Generic UART notification callback type.
[in] | uartp | pointer to the UARTDriver object |
Definition at line 98 of file hal_uart_lld.h.
typedef void(* uartccb_t) (UARTDriver *uartp, uint16_t c) |
Character received UART notification callback type.
[in] | uartp | pointer to the UARTDriver object |
[in] | c | received character |
Definition at line 106 of file hal_uart_lld.h.
typedef struct UARTDriver UARTDriver |
Structure representing an UART driver.
Definition at line 91 of file hal_uart_lld.h.
typedef void(* uartecb_t) (UARTDriver *uartp, uartflags_t e) |
Receive error UART notification callback type.
[in] | uartp | pointer to the UARTDriver object |
[in] | e | receive error mask |
Definition at line 114 of file hal_uart_lld.h.
typedef uint32_t uartflags_t |
UART driver condition flags type.
Definition at line 86 of file hal_uart_lld.h.
typedef void(* uarthcb_t) (UARTDriver *uartp, uartflags_t full) |
Receive Half-transfer UART notification callback type.
[in] | uartp | pointer to the UARTDriver object |
[in] | full | flag set to 1 for the second half, and 0 for the first half |
Definition at line 122 of file hal_uart_lld.h.
|
static |
Puts the receiver in the UART_RX_IDLE state.
[in] | uartp | pointer to the UARTDriver object |
Definition at line 65 of file hal_uart_lld.c.
void uart_lld_blocking_send | ( | UARTDriver * | uartp, |
size_t | n, | ||
const void * | txbuf | ||
) |
Definition at line 395 of file hal_uart_lld.c.
void uart_lld_callback | ( | LPUART_Type * | base, |
void * | handle, | ||
status_t | status, | ||
void * | userData | ||
) |
Definition at line 72 of file hal_uart_lld.c.
Referenced by uart_lld_start().
void uart_lld_init | ( | void | ) |
Low level UART driver initialization.
@notapi
Definition at line 123 of file hal_uart_lld.c.
void uart_lld_start | ( | UARTDriver * | uartp | ) |
Configures and activates the UART peripheral.
[in] | uartp | pointer to the UARTDriver object |
@notapi
Definition at line 148 of file hal_uart_lld.c.
void uart_lld_start_receive | ( | UARTDriver * | uartp, |
size_t | n, | ||
void * | rxbuf | ||
) |
Starts a receive operation on the UART peripheral.
[in] | uartp | pointer to the UARTDriver object |
[in] | n | number of data frames to send |
[out] | rxbuf | the pointer to the receive buffer |
@notapi
Definition at line 338 of file hal_uart_lld.c.
void uart_lld_start_send | ( | UARTDriver * | uartp, |
size_t | n, | ||
const void * | txbuf | ||
) |
Starts a transmission on the UART peripheral.
[in] | uartp | pointer to the UARTDriver object |
[in] | n | number of data frames to send |
[in] | txbuf | the pointer to the transmit buffer |
@notapi
Definition at line 299 of file hal_uart_lld.c.
void uart_lld_stop | ( | UARTDriver * | uartp | ) |
Deactivates the UART peripheral.
[in] | uartp | pointer to the UARTDriver object |
@notapi
Definition at line 252 of file hal_uart_lld.c.
size_t uart_lld_stop_receive | ( | UARTDriver * | uartp | ) |
Stops any ongoing receive operation.
[in] | uartp | pointer to the UARTDriver object |
@notapi
Definition at line 366 of file hal_uart_lld.c.
size_t uart_lld_stop_send | ( | UARTDriver * | uartp | ) |
Stops any ongoing transmission.
[in] | uartp | pointer to the UARTDriver object |
@notapi
Definition at line 320 of file hal_uart_lld.c.
UARTDriver UARTD1 |
UART1 driver identifier.
Definition at line 43 of file hal_uart_lld.c.
Referenced by uart_lld_init(), uart_lld_start(), and uart_lld_stop().
|
extern |
UART1 driver identifier.
Definition at line 43 of file hal_uart_lld.c.
Referenced by uart_lld_init(), uart_lld_start(), and uart_lld_stop().
UARTDriver UARTD2 |
Definition at line 46 of file hal_uart_lld.c.
Referenced by uart_lld_init(), uart_lld_start(), and uart_lld_stop().
|
extern |
Definition at line 46 of file hal_uart_lld.c.
Referenced by uart_lld_init(), uart_lld_start(), and uart_lld_stop().
UARTDriver UARTD3 |
Definition at line 49 of file hal_uart_lld.c.
Referenced by uart_lld_init(), uart_lld_start(), and uart_lld_stop().
|
extern |
Definition at line 49 of file hal_uart_lld.c.
Referenced by uart_lld_init(), uart_lld_start(), and uart_lld_stop().