docs: 更新 COMPLETION + libdatacenter API 文档 v3.1
## COMPLETION.md - 日期更新至 2026-07-10 - 新增 libiec 模块(5文件, 26个CS10x回调) - 新增 libcom_router bind_app 协议绑定路由 - 新增 v3.1 修复与增强清单(10项) - 标注 libiec 文档待补 ## API-libdatacenter.md - 新增 v3.1 版本历史(7项修复明细) - 新增已知未完成功能(3项,含优先级) - 文档保持 v3.0 所有原有内容不变
This commit is contained in:
parent
0133c2950f
commit
4976f1a181
|
|
@ -28,5 +28,5 @@ release/inc/
|
||||||
|
|
||||||
# AI 工具
|
# AI 工具
|
||||||
CLAUDE.md
|
CLAUDE.md
|
||||||
docs/
|
# docs/
|
||||||
libiec61850/libiec61850手册/
|
libiec61850/libiec61850手册/
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
# RTU_ALL_AI 开发完成事项清单
|
# RTU_ALL_AI 开发完成事项清单
|
||||||
|
|
||||||
> 日期: 2026-07-08
|
> 日期: 2026-07-10
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -50,8 +50,26 @@
|
||||||
|------|------|:----:|
|
|------|------|:----:|
|
||||||
| ICP67 自定义协议库 | `libicp67`(纯C,4文件: frame+decode+core+headers) | ✅ |
|
| ICP67 自定义协议库 | `libicp67`(纯C,4文件: frame+decode+core+headers) | ✅ |
|
||||||
| 自协议应用层模块 | `libself_ptl`(C++,3文件: core+cfg+cb + 2 headers) | ✅ |
|
| 自协议应用层模块 | `libself_ptl`(C++,3文件: core+cfg+cb + 2 headers) | ✅ |
|
||||||
| 通信路由中枢 | `libcom_router`(C++,2文件: core+dispatch + 1 header) | ✅ |
|
| 通信路由中枢 | `libcom_router`(C++,3文件: core+dispatch+header, bind_app协议绑定路由) | ✅ |
|
||||||
| ICP67 单元测试 | `test_icp67.c`(21 项全通过) | ✅ |
|
| ICP67 单元测试 | `test_icp67.c`(21 项全通过) | ✅ |
|
||||||
|
| IEC-104 服务端模块 | `libiec`(5文件: iec104.cpp+cfg.cpp+point.cpp+2 headers, 26个CS10x回调) | ✅ |
|
||||||
|
| 通信路由中枢 bind_app | `libcom_router`(dispatch_cb 注册表, 通道配置 bind_app 协议绑定) | ✅ |
|
||||||
|
|
||||||
|
## 阶段 2:v3.1 修复与增强(2026-07-10)
|
||||||
|
|
||||||
|
| 任务 | 模块 | 状态 |
|
||||||
|
|------|------|:----:|
|
||||||
|
| 修复死锁(持锁回调) | `libdatacenter` — dc_async_timeout_check | ✅ |
|
||||||
|
| 修复线程安全(static string) | `libdatacenter` — dc_get_type_name → thread_local | ✅ |
|
||||||
|
| 修复队列无上限 | `libdatacenter` — event queues MAX_SIZE=1024 | ✅ |
|
||||||
|
| 修复回路阻断竞态 | `libdatacenter` — dirty_by_multi 标志 | ✅ |
|
||||||
|
| 补全值范围校验 | `libdatacenter` — dc_check_val_valid 12种数值类型 min/max | ✅ |
|
||||||
|
| 补全strcmp比较 | `libdatacenter` — C8/C32/C64/C128/STR 用 strcmp | ✅ |
|
||||||
|
| 代码格式规范化 | `libiec`(3文件)— LOCAL/Tab/大括号独占行 | ✅ |
|
||||||
|
| self_ptl 测试命令 | `libself_ptl`(CMD_REGISTER_C, 9个子命令) | ✅ |
|
||||||
|
| 代码审查+修复 | `libicp67`(TI_1/TI_6边界检查, TI_3续帧修复等15项) | ✅ |
|
||||||
|
| EV_STOP 补全 | `self_ptl` + `com_router` + `modbus_m`(3模块) | ✅ |
|
||||||
|
| libiec 模块文档 | `docs/system/libiec/`(待补) | ⬜ |
|
||||||
|
|
||||||
## 阶段 3:系统集成
|
## 阶段 3:系统集成
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -330,3 +330,30 @@ int main(void)
|
||||||
| 错误码 | -1/0 | enum dc_error_t | enum dc_error_t(12种) |
|
| 错误码 | -1/0 | enum dc_error_t | enum dc_error_t(12种) |
|
||||||
| 命令调试 | cmd_dc | 无 | CMD_REGISTER_C(libcmd) |
|
| 命令调试 | cmd_dc | 无 | CMD_REGISTER_C(libcmd) |
|
||||||
| 文件数 | 13 .cpp | 8 .cpp | 15 .cpp(按功能拆分) |
|
| 文件数 | 13 .cpp | 8 .cpp | 15 .cpp(按功能拆分) |
|
||||||
|
|
||||||
|
### 7.1 版本历史
|
||||||
|
|
||||||
|
| 日期 | 版本 | 变更 |
|
||||||
|
|------|------|------|
|
||||||
|
| 2026-07-07 | v3.0 | 初始实现,对齐 RTU 原工程 v1+v2 |
|
||||||
|
| 2026-07-10 | v3.1 | Bug 修复 + 原工程功能补全(详见下表) |
|
||||||
|
|
||||||
|
### v3.1 修复明细(2026-07-10)
|
||||||
|
|
||||||
|
| # | 文件 | 变更 | 说明 |
|
||||||
|
|:--|------|------|------|
|
||||||
|
| 1 | `dc_async.cpp` | 🔧 死锁修复 | `timeout_check()` 持锁调回调 → 先收集列表,解锁后批量调用 |
|
||||||
|
| 2 | `dc_api_wrap.cpp` | 🔧 线程安全 | `dc_get_type_name()` `static string` → `thread_local char[32]` |
|
||||||
|
| 3 | `dc_event.cpp` | 🔧 队列防溢 | SOE/扰动/故障队列无上限 → `EVENT_QUEUE_MAX_SIZE=1024` |
|
||||||
|
| 4 | `dc_signal_out.cpp` | 🔧 回路阻断竞态 | `last_caller_module` 多模块覆盖 → 新增 `dirty_by_multi` 标志 |
|
||||||
|
| 5 | `dc_signal_check.cpp` | ➕ 值范围校验 | `dc_check_val_valid` 扩展为 12 种数值类型 min/max 范围 + bool 0/1 校验 |
|
||||||
|
| 6 | `dc_signal_check.cpp` | ➕ strcmp 替代 | `dc_check_ctrl_val_valid` 对 C8/C32/C64/C128/STR 改用 `strcmp` |
|
||||||
|
| 7 | `dc_signal_util.cpp` | ➕ 线程安全 API | 新增 `dc_internal_type_name()` buffer 版类型名称查询 |
|
||||||
|
|
||||||
|
### 已知未完成
|
||||||
|
|
||||||
|
| 功能 | 优先级 | 说明 |
|
||||||
|
|------|:----:|------|
|
||||||
|
| 事件队列自动补时间戳 | 🟡 | push 时 `sec==0 && ms==0` 自动获取当前时间 |
|
||||||
|
| `dc_param_cfg_register_read_cb/save_cb` 钩子 | 🟡 | SPEC D29-D30,当前直接内置 tinyxml2 |
|
||||||
|
| `vec_p_default_data` | 🟢 | param 信号出厂默认值 |
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue