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 (const UART_HandleTypeDef *const huart) |
| | Waiting for UART global state to be ready for next transmission.
|
| |
| FctERR | UART_Term_Flush_RxBuf (const 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-2026, 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!
◆ 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 |
( |
const 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 |
( |
const 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.