EMS 知识库
首页 / knowledge/代码解析/midware/interface

interface.h

源文件路径:midware/interface/interface.h 所属模块:midware/interface(外部接口层) 代码行数:24

1. 文件职责

本文件是 midware/interface 目录的对外声明头,仅集中导出两个 uCOS-II 任务入口函数 task_interface_parse() 与 task_modbus_rtu()。它处在固件"应用接口层"的最外层:向下屏蔽了 DRM、干接点、Modbus-RTU、充电桩、并机方案自适应等一堆具体业务,向上只给 user/main.c 提供两个可被 OSTaskCreateExt() 直接挂载的任务桩。它本身不含数据结构、不含宏常量(除调试开关 DEBUG_INTERFACE),是典型的最小暴露头文件。任务体实现在同目录的 interface.c 中,由 user/main.c 创建并调度。

2. 关键数据结构与宏

名称类型(结构体/枚举/宏/联合体)说明
__INTERFACE_H宏头文件防重复包含哨兵,定义于 midware/interface/interface.h:9,配对 #ifndef / #define
DEBUG_INTERFACE宏调试计数开关,定义为 0(midware/interface/interface.h:13);置 1 时 interface.c 会累加 g_t_task_run_status.u32_task_interface_cnt / u32_task_modbus_rtu_cnt

本文件未定义任何结构体、枚举或联合体。

3. 函数清单

本文件只含函数声明,无函数定义。

函数名作用域(static/全局)说明(一句话)
task_interface_parse全局(声明)接口解析任务入口,500 ms 周期轮询 DRM 判定、干接点逻辑、参数保存与 EPO 控制
task_modbus_rtu全局(声明)Modbus-RTU 通讯任务入口,负责并机方案自适应、充电桩控制、Sunspec 数据刷新

4. 核心逻辑解析

本文件是纯声明文件,无逻辑。其两个声明的实现在 midware/interface/interface.c 中,由 user/main.c 创建:

DEBUG_INTERFACE 宏被 interface.c:227 与 interface.c:375 两处 #if 使用,用于在调试构建里对外暴露任务运行次数计数(对应 g_t_task_run_status)。

5. 对外接口

本文件导出的函数与全局变量:

名称类型使用者
task_interface_parse函数user/main.c(user/main.c:24 include 本头文件,user/main.c:222 创建任务)
task_modbus_rtu函数user/main.c(user/main.c:288 创建任务)
DEBUG_INTERFACE宏仅 midware/interface/interface.c 使用

本文件调用的外部函数/变量: 无(纯声明)。

6. 依赖关系

7. 备注与风险点