/** ****************************************************************************** * @file cmd_router.h * @brief 指令路由与响应分发模块头文件 * @author Application Layer * @version 1.0 ****************************************************************************** * @attention * 本模块实现指令路由与响应分发功能 * 设计依据:多通信接口统一指令处理系统开发计划 第3.2节 * * 核心职责: * - 从各UART端口读取数据并喂入解析器 * - 根据指令来源端口路由响应 * - 管理响应路由表 ****************************************************************************** */ #ifndef __CMD_ROUTER_H #define __CMD_ROUTER_H #ifdef __cplusplus extern "C" { #endif #include #include #include "multi_uart_router.h" #include "cmd_parser.h" typedef void (*cmd_response_handler_t)(port_id_t port, const char *response, uint16_t len); void CmdRouter_Init(void); void CmdRouter_Task(void); void CmdRouter_SetResponseHandler(cmd_response_handler_t handler); void CmdRouter_SendResponse(port_id_t port, const char *response, uint16_t len); void CmdRouter_BroadcastResponse(const char *response, uint16_t len); uint32_t CmdRouter_GetProcessedCount(void); uint32_t CmdRouter_GetRoutedCount(void); #ifdef __cplusplus } #endif #endif