This module contains drivers for UART half-duplex communication bus.
More...
This module contains drivers for UART half-duplex communication bus.
It needs to manage the communication direction by enabling or disabling TX.
◆ UART_HALF_DUPLEX_DEFAULT_TIMEOUT_US
#define UART_HALF_DUPLEX_DEFAULT_TIMEOUT_US (20000LU) |
◆ UART_HALF_DUPLEX_DIR_NONE
#define UART_HALF_DUPLEX_DIR_NONE { NULL, NULL, NULL } |
◆ anonymous enum
Possible UART_HALF_DUPLEX return values.
Enumerator |
---|
UART_HALF_DUPLEX_OK | everything in order
|
UART_HALF_DUPLEX_NODEV | invalid UART device given
|
UART_HALF_DUPLEX_NOBAUD | given baudrate is not applicable
|
UART_HALF_DUPLEX_INTERR | all other internal errors
|
UART_HALF_DUPLEX_NOMODE | given mode is not applicable
|
UART_HALF_DUPLEX_NOBUFF | invalid buffer given
|
Definition at line 73 of file uart_half_duplex.h.
◆ uart_half_duplex_init()
Initialize the half-duplex UART bus to communicate with devices.
- Parameters
-
[out] | dev | the device |
[in] | buffer | the buffer used for TX and RX |
[in] | buffer_max_size | the buffer size |
[in] | params | the initialization parameters |
- Returns
- UART_HALF_DUPLEX_OK if everything is in order
-
UART_HALF_DUPLEX_NODEV if invalid UART device was given
-
UART_HALF_DUPLEX_NOBAUD if given baudrate is not applicable
-
UART_HALF_DUPLEX_INTERR if an other internal error occurred
-
UART_HALF_DUPLEX_NOMODE if the given mode is not applicable
-
UART_HALF_DUPLEX_NOBUFF if an invalid buffer was given
◆ uart_half_duplex_recv()
Recv data an fill the driver's buffer.
- Parameters
-
[in] | dev | the device |
[in] | size | the number of characters to receive |
- Returns
- the number of characters actually received
◆ uart_half_duplex_send()
Send the data contained in the driver's buffer.
- Parameters
-
[in] | dev | the device |
[in] | size | the number of characters to send |
- Returns
- the number of characters actually sent
◆ uart_half_duplex_set_rx()
◆ uart_half_duplex_set_tx()