新增:串口通讯避障功能

​ 1、Launcher中的串口只使用串口0(调试串口)、串口2(主动RS485端口);串口1与串口3不使用,且不初始化。将串口通讯缓冲区修改为1100Byte。

​  目的:CH564由于将Launcher代码搬运到RAM中运行,因此可使用的变量大小只有32Kbyte。不使用的串口将不初始化,同时使用的通讯缓冲区将节约出来,否则RAM空间不够使用。

​ 2、串口2 - 增加RS485使能,同时通讯增加避障功能。
This commit is contained in:
caocong
2026-01-19 16:39:22 +08:00
parent 094fd76a72
commit 5e9338cee4
37 changed files with 37088 additions and 289 deletions

View File

@@ -28,7 +28,7 @@
#define USART_BUFFER_SIZE 512
typedef void (*Uart_prt)(uint8_t * ,uint16_t );
typedef uint8_t (*Uart_prt)(uint8_t * ,uint16_t );
typedef uint8_t (*Uart_set_prt)(uint32_t );
typedef enum
@@ -80,7 +80,8 @@ typedef struct{
Uart_set_prt set_baud_cf;
}UART_t;
extern UART_t g_uart[UART_MAX];
extern UART_t g_uart_0;
extern UART_t g_uart_2;
void UARTx_Init(UART_IDX uart_id, uint32_t buad);
void Set_Uart_recvTimeout(UART_t *set_uart,uint32_t baud);
@@ -95,6 +96,14 @@ uint8_t UART1_ChangeBaud(uint32_t baudrate);
uint8_t UART2_ChangeBaud(uint32_t baudrate);
uint8_t UART3_ChangeBaud(uint32_t baudrate);
uint8_t MCU485_SendString_0(uint8_t *buff, uint16_t len);
uint8_t MCU485_SendString_2(uint8_t *buff, uint16_t len);
uint8_t Uartx_Add_Data_To_SendBuff(UART_t *uart_info,uint8_t *buff,uint16_t len,uint8_t sendCount,uint32_t ValidDuration,uint32_t sendInterval);
uint8_t Uartx_Clear_SendBuff(UART_t *uart_info);
uint8_t Uartx_Avoid_Conflict_Send_Task(UART_t *uart_info);
void Uart0_Task(void);
void Uart2_Task(void);
#endif /* MCU_DRIVER_INC_UART_H_ */