54 lines
4.0 KiB
Markdown
54 lines
4.0 KiB
Markdown
# DEBUG 十五路 CAN 映射与显示测试
|
||
|
||
本报告记录屏幕接口 1.2 的历史画面。用户随后纠正 PD1 / Safe_S 为左电机互锁,屏幕接口 1.3 将 d5 移至顶行第二格并删除 BSPD/TSMS,CAN 映射不变;后续布局验证见 [屏幕修正报告](DEBUG页面修正测试报告.md)。
|
||
|
||
2026-10-03,固件 v2.3。按用户提供的十五行接线表从上到下对应 PD0~PD14,最终确认极性为 **低电平正常、高电平故障**。此前高电平正常的版本仅编译,未烧录。
|
||
|
||
## 映射和界面范围
|
||
|
||
PD0~PD14 对应 `d0,d5,d2,d6,d7,d1,d3,d4,d8,d9,d10,d11,d12,d13,d14`。具名信号表见 [SDC / BMS 协议](SDC_BMS协议.md)。d1 同时更新“左急停”与“行程/惯性”;d15(主控盒 12V)没有输入来源,保持未知。
|
||
|
||
**“电机互锁 / 无检测项”和“BSPD/TSMS / 返回支路”是现有页面的说明区域,没有独立采样映射,不随本次十五路输入变化。** 用户表也不包含这两项;本轮没有修改屏幕布局或为其派生状态。原图接线名称与当前屏幕部分显示名称的差异保留。
|
||
|
||
## 固件与验证链路
|
||
|
||
Release 编译通过,Flash 15988 B、RAM 2632 B。已通过 ST-LINK 烧录并完整回读 15988 字节,与发布 BIN 逐字节一致。SHA256:`17D1165C6894E0EBBF78B2C998A3D2F268D9E0D89446C5C978AC4FEB1329911E`。
|
||
|
||
链路:PCAN-USB → CAN1 500 kbit/s → 实物 STM32G0B1 MCU → USART2 → CH340 COM4 9600 8N1 → 官方 HMI 调试器的“用户 MCU 输入”。CAN2 250K 保持配置,共用解码与映射,但本次未重新接线测试。
|
||
|
||
重开 HMI 后最初停在 dash,导致早期页面颜色核对不匹配。停止串口输入后仅执行 `page debug` 导航命令,再切回用户 MCU 输入并连接 COM4;没有执行 dN 赋值。完整复测的所有状态变化均来自真实 CAN 注入及 MCU UART。
|
||
|
||
## 41 项完整复测:全部通过
|
||
|
||
| 检查 | 结果 |
|
||
| --- | --- |
|
||
| 仅心跳、尚未采样 | 全部未知,不误判正常 |
|
||
| 全低 | d0~d14 全正常,d15 未知 |
|
||
| 十五路逐项高、低,共 30 项 | 对应映射位置分别故障、正常;其他项保持正常 |
|
||
| PD5 高、低 | d1 两个位置同步红故障、绿正常 |
|
||
| 全高 | d0~d14 全故障,d15 未知 |
|
||
| 保留 bit15 | 屏蔽,不改变映射范围 |
|
||
| DLC 7、错误扩展格式 | 原电平、变化掩码、源时间戳和状态不被覆盖 |
|
||
| 仅心跳持续超过 500 ms | 已接收的 GPIO 状态继续有效,符合变化触发的源协议 |
|
||
| 心跳和 GPIO 均停止 | 超过 500 ms 后所有状态未知 |
|
||
| 丢失后只恢复心跳 | 仍未知,需新 GPIO 快照 |
|
||
| 新 GPIO 恢复 | 状态恢复正常 |
|
||
| 最终停止注入 | 状态再次全部未知 |
|
||
|
||
每项核对真实 MCU 原始字段、源时间戳、16 个 DEBUG 状态及画面 17 个状态位置的颜色。PCAN 状态均为 `0x0`,MCU CAN / UART 接收错误计数均为 0;HMI 结束时接收计数 T:6973 / L:597。人工另检查全正常、全故障和 PD5 故障截图的文字与位置。
|
||
|
||
两份 DBC 的 11 条报文、40 个信号、28 个已知报文、位时序和 SDC 源布局校验通过。报文布局没有改变,仅更新映射说明和接口版本。软件仍使用 CAN 中断、UART DMA、变化项刷新和最新值合并。
|
||
|
||
## 证据
|
||
|
||
- [完整 CAN 报文、MCU 状态与画面核对](evidence/2026-10-03/debug-gpio-mapped/mapping-results.json)
|
||
- [烧录回读结果](evidence/2026-10-03/debug-gpio-mapped/flash-verified.json)
|
||
- [测试脚本](evidence/2026-10-03/debug-gpio-mapped/test_mapping.py)
|
||
- [用户输入顺序图](evidence/2026-10-03/debug-gpio-mapped/user-input-order.png)
|
||
|
||

|
||
|
||

|
||
|
||
测试完成后停止 CAN 注入,HMI 保留 DEBUG 页和用户 MCU 输入模式,页面全部未知。未接物理串口屏、真实 SDC 节点或车辆执行器。本次证明显示输入与呈现链路,不能证明车辆安全动作。
|