UART terminal header.
More...
#include "sarmfsw.h"
|
char | getBreakout_char (void) |
| Get UART Rx breakout character.
|
|
void | setBreakout_char (const char breakout) |
| Set a new breakout character.
|
|
FctERR | UART_Term_Init (UART_HandleTypeDef *const huart, const size_t len) |
| Initialize UART terminal.
|
|
FctERR | UART_Term_Launch_It_Rx (UART_HandleTypeDef *const huart) |
| Start UART SERIAL DEBUG Rx interruptions.
|
|
FctERR | UART_Term_Wait_Ready (UART_HandleTypeDef *const huart) |
| Waiting for UART global state to be ready for next transmission.
|
|
FctERR | UART_Term_Flush_RxBuf (UART_HandleTypeDef *const huart) |
| Clear buffer in used for SERIAL DEBUG.
|
|
FctERR | UART_Term_Send (UART_HandleTypeDef *const huart, const char *str, const size_t len) |
| Sends string to UART.
|
|
FctERR | UART_Term_Message_Handler (const char *msg, const size_t len) |
| Treat fully received message.
|
|
void | UART_Term_RxCpltCallback (UART_HandleTypeDef *const huart) |
| UART Term Rx Transfer completed callback.
|
|
void | UART_Term_TxCpltCallback (UART_HandleTypeDef *const huart) |
| UART Term Tx Transfer completed callback.
|
|
|
char | breakout_char |
| breakout char (message complete)
|
|
UART_HandleTypeDef * | dbg_uart |
| UART debug terminal instance.
|
|
UART terminal header.
- Author
- SMFSW
- Copyright
- MIT (c) 2017-2024, SMFSW
- Note
- UART redirection is enabled when UART_REDIRECT symbol is defined at project level
-
define DBG_SERIAL at project level with an UART instance to send printf likes strings to UART
-
It is recommended to have interrupts enabled for UART instance (and is required when reception is needed)
◆ STDREAM__UART_TX_IT
#define STDREAM__UART_TX_IT 0 |
Set to send to uart not using interrupts.
- Note
- STDREAM__UART_TX_IT can be defined at project level to define if UART messages are sent in blocking/non blocking mode
- Warning
- Do not change this if intending to send messages inside interrupts!
◆ sUARTbuffer
typedef struct sUARTbuffer sUARTbuffer |
◆ getBreakout_char()
char getBreakout_char |
( |
void | | ) |
|
|
inline |
Get UART Rx breakout character.
- Returns
- Breakout character
◆ setBreakout_char()
void setBreakout_char |
( |
const char | breakout | ) |
|
|
inline |
Set a new breakout character.
- Parameters
-
[in] | breakout | - new breakout character |
◆ UART_Term_Flush_RxBuf()
FctERR UART_Term_Flush_RxBuf |
( |
UART_HandleTypeDef *const | huart | ) |
|
Clear buffer in used for SERIAL DEBUG.
- Parameters
-
- Returns
- FctERR - Error code
◆ UART_Term_Init()
FctERR UART_Term_Init |
( |
UART_HandleTypeDef *const | huart, |
|
|
const size_t | len ) |
Initialize UART terminal.
- Parameters
-
[in] | huart | - UART handle |
[in] | len | - buffer length |
- Returns
- FctERR - Error code
◆ UART_Term_Launch_It_Rx()
FctERR UART_Term_Launch_It_Rx |
( |
UART_HandleTypeDef *const | huart | ) |
|
Start UART SERIAL DEBUG Rx interruptions.
- Parameters
-
- Returns
- FctERR - Error code
◆ UART_Term_Message_Handler()
FctERR UART_Term_Message_Handler |
( |
const char * | msg, |
|
|
const size_t | len ) |
Treat fully received message.
- Weak Functions
- This function is implemented as weak to be implemented in projects (weak one only prints & flushes the buffer)
- Parameters
-
[in] | msg | - pointer to received message |
[in] | len | - received message length |
- Returns
- FctERR - Error code
◆ UART_Term_RxCpltCallback()
void UART_Term_RxCpltCallback |
( |
UART_HandleTypeDef *const | huart | ) |
|
UART Term Rx Transfer completed callback.
- Note
- Can be used with callback registering CubeMX functionality
- Warning
- When not using callback registering CubeMX functionality, you may need to implement your own custom HAL_UART_RxCpltCallback weak HAL_UART_RxCpltCallback is defined in the library (handle for debug UART only), you may have to define your own when multiple UARTs are in use.
- Parameters
-
[in,out] | huart | - UART handle |
- Note
- Shall be called from HAL_UART_RxCpltCallback with proper UART instance
◆ UART_Term_Send()
FctERR UART_Term_Send |
( |
UART_HandleTypeDef *const | huart, |
|
|
const char * | str, |
|
|
const size_t | len ) |
Sends string to UART.
- Parameters
-
[in] | huart | - UART handle |
[in] | str | - pointer to string to send |
[in] | len | - length of string |
- Returns
- FctERR - Error code
◆ UART_Term_TxCpltCallback()
void UART_Term_TxCpltCallback |
( |
UART_HandleTypeDef *const | huart | ) |
|
UART Term Tx Transfer completed callback.
- Note
- Can be used with callback registering CubeMX functionality
- Warning
- When not using callback registering CubeMX functionality, you may need to implement your own custom HAL_UART_TxCpltCallback weak HAL_UART_TxCpltCallback is defined in the library (handle for debug UART only), you may have to define your own when multiple UARTs are in use.
- Parameters
-
[in,out] | huart | - UART handle |
- Note
- Shall be called from UART_Term_TxCpltCallback with proper UART instance
◆ UART_Term_Wait_Ready()
FctERR UART_Term_Wait_Ready |
( |
UART_HandleTypeDef *const | huart | ) |
|
Waiting for UART global state to be ready for next transmission.
- Parameters
-
- Returns
- FctERR - Error code
◆ breakout_char
breakout char (message complete)
- Note
- Default user breakout char set to '!' and '\r' is built-in default breakout char
◆ dbg_uart
UART_HandleTypeDef* dbg_uart |
|
extern |
UART debug terminal instance.
UART debug terminal instance.