/*** * @Author: mbw * @Date: 2024-12-06 16:52:29 * @LastEditors: mbw && 1600520629@qq.com * @LastEditTime: 2024-12-07 15:10:15 * @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\inc\bsp_uart.h * @Description: * @ * @Copyright (c) 2024 by ${git_name_email}, All Rights Reserved. */ #ifndef __BSP_UART_H__ #define __BSP_UART_H__ #include "CH58x_common.h" #define MAX_VALVE_NUM 8 #define UART3_RX_PIN GPIO_Pin_20 //PB20 日志打印 #define UART3_TX_PIN GPIO_Pin_21 // PB21 #define BT_UART_TX_PIN GPIO_Pin_9 //PA9 #define BT_UART_RX_PIN GPIO_Pin_8 //PA8 typedef struct valve_data valve_data_t; /* 无线调压阀编号 无线调压阀 MAC 地址 无线调压阀连接状态 无线调压阀开关状态 无线调压阀温度 无线调压阀进口压力 无线调压阀出口压力 无线调压阀大气压 */ struct __attribute__((packed)) valve_data { uint8_t valve_id; uint8_t valve_mac[6]; uint8_t valve_connct_status; uint8_t valve_switch_status; uint8_t valve_temp; uint32_t valve_in_pressure; uint32_t valve_out_pressure; uint32_t valve_atm_pressure; }; typedef struct valve_data_list { uint8_t valve_num; valve_data_t valve_data[MAX_VALVE_NUM]; } valve_data_list_t ; void BSP_UART1_Init(void); unsigned int BSP_Uart1_Receive_Data(void *buf, unsigned int len); unsigned int BSP_Uart1_Send_Data(const void *buf, unsigned int len); void BSP_UART3_Init(void); unsigned int BSP_Uart3_Receive_Data(void *buf, unsigned int len); unsigned int BSP_Uart3_Send_Data(const void *buf, unsigned int len); void BSP_Shell_Loop(void); #endif // !__BSP_UART_H__