/******************************* (C) LiteMesh ********************************** * @module usart * @file usart.h * @version 1.0.0 * @date XX.XX.XXXX * $brief Template ******************************************************************************* * @history Version Author Comment * XX.XX.XXXX 1.0.0 Telenkov D.A. First release. ******************************************************************************* */ /* Define to prevent recursive ----------------------------------------------*/ #ifndef USART_H #define USART_H #include #include "FreeRTOS.h" #include "queue.h" #include "semphr.h" #include "common_config.h" /** * @brief */ #define USER_USART USART1 #define USER_USART_BAUD 115200 #define USER_USART_WORD_LEN 8 #define USER_USART_PARITY USART_Parity_No #define USER_USART_STOP_BIT USART_StopBits_1 #define UPS_USART USART2 #define UPS_USART_BAUD 2400 #define UPS_USART_WORD_LEN 8 #define UPS_USART_PARITY USART_Parity_No #define UPS_USART_STOP_BIT USART_StopBits_1 #ifdef PORTGW_ENABLE #define RS485_USART UART3 #define RS485_USART_BAUD 115200 #define RS485_USART_WORD_LEN 8 #define RS485_USART_PARITY USART_Parity_No #define RS485_USART_STOP_BIT USART_StopBits_1 /* Queue */ QueueHandle_t rs485TxQ, rs485RxQ; /* RS485 mutex */ SemaphoreHandle_t rs485mutex; #endif void init_ups_rbuf(void); /** * @brief */ void InitUSART(void); /** * @brief * @retval */ int ups_getchar(unsigned int timeout); void ups_putchar(uint16_t byte); int ups_send_block(void *data, uint8_t len); int service_getchar(unsigned int timeout); void service_putchar(uint16_t byte); int service_send_block(void *data, uint8_t len); void putc_(void *p, char c); void putchar_(uint8_t c); #endif /* #ifndef USART_H */ /****************************** (C) LiteMesh ***************** end of file ****/