chrg: 完成V1.1.31版本迭代更新

1.  更新各文件版本号至V1.1.31,固件版本寄存器设为0x012F
2.  南向通道选通:仅在GPIO选通成功后才更新物理通道缓存
3.  重构寄存器地址解码逻辑,统一0x06/0x10功能码的地址校验
4.  新增功率板短路/OCP/动态测试状态定义0x05/0x06/0x07
5.  移除电流命令覆盖逻辑,改为按顺序排队等待回码
6.  优化轮询线程:每次发送前重新选通通道,选通失败则跳过当前任务
7.  新增测试态退出确认流程,初始化和关机时需确认功率板退出测试态
8.  增加跨通道写入保护,拒绝多寄存器写跨通道操作
9.  补充多处中文注释,优化调试日志输出格式
This commit is contained in:
wrh
2026-09-17 12:05:37 +08:00
parent c55f05e838
commit b58b47f64a
7 changed files with 278 additions and 83 deletions
+45
View File
@@ -29,6 +29,51 @@
- `apps/chrg` 各C源文件和头文件的文件头版本统一为 `V1.1.24`。
- Bootloader版本保持 `V1.0.0` 不变。
- 后续每次修改应用代码时,必须同步更新应用版本号、对外版本编码和本修改日志。
## V1.1.31 - 2026-09-16
### 通道保护代码注释
- 补充上位机地址解码、非法通道初值、跨通道写保护的中文注释。
- 补充南向物理选通同步、自动轮询重新选通及电流命令顺序入队的中文注释。
- 协议板版本号更新为 `V1.1.31`,固件版本寄存器更新为 `0x012F`。
## V1.1.30 - 2026-09-16
### 南向通道选择与地址校验
- 南向物理选通成功后统一记录 `chrgsouth.idx`,自动轮询每次发送前重新选通目标通道。
- COM、LCD、升级和控制台发送路径同步更新当前通道,选通失败时禁止继续发送。
- 单寄存器写初始化通道变量,并通过统一解码函数拒绝非法分区和越界地址。
- 多寄存器写按每通道50个地址计算通道,并拒绝跨通道写入。
- `SOUTH_COMMAND_DEBUG` 日志增加队列通道、实际物理通道、寄存器和值。
- 协议板版本号更新为 `V1.1.30`,固件版本寄存器更新为 `0x012E`。
## V1.1.29 - 2026-09-16
### 取消电流命令覆盖去重
- 删除南向队列对未发送电流命令的覆盖逻辑。
- 同一通道新增的电流设置按提交顺序逐条发送,并分别等待功率板回码。
- 协议板版本号更新为 `V1.1.29`,固件版本寄存器更新为 `0x012D`。
- 待验证:快速连续设置电流时,确认每条电流命令都能在南向日志和功率板侧收到。
## V1.1.28 - 2026-09-16
### 测试态退出结果确认
- 初始化发送 `WORK_STOP` 后,通过新的 `P1` 量测重新读取功率板 `status1`。
- 只有确认 `status1` 不再是 `0x05/0x06/0x07`,才继续打开辅助继电器和后续初始化命令。
- 关机流程同样在关闭南向继电器前确认测试态已退出;每连续重发 `WORK_STOP` 3 次后重新计数,仍未退出时保持安全等待并继续重试。
- 协议板版本号更新为 `V1.1.28`,固件版本寄存器更新为 `0x012C`。
## V1.1.27 - 2026-09-16
### 功率板测试状态退出保护
- 新增功率板 `status1=0x05/0x06/0x07` 的 Short、OCP、DYNA 状态定义。
- 初始化前识别功率板测试状态,优先发送 `WORK_STOP` 后再继续初始化。
- 负载关机流程调整为 `WORK_STOP` 优先,避免测试退出命令被后续启动状态覆盖。
- 上位机版本寄存器 `0x0300` 更新为 `0x012B`(`V1.1.27`)。
## V1.1.23 - 2026-09-11