Files
AMI/docs/无人状态显示验证报告.md

6.9 KiB
Raw Permalink Blame History

AMI 无人状态显示验证报告

日期:2026-10-07。固件 v2.7,800×480 屏幕接口 1.5。

主页面在“已锁定/已解锁”右侧增加独立无人状态。修改包含 MCU 0x183 解码、非阻塞 UART 状态同步、当前 AMI_TJC8048X370_011.HMI、配套 TFT、两份 DBC、CAN 说明与发送工具。保留已有双前轮轮速接入、CAN1 心跳及换屏成果;本报告初次大屏验证时,原 480×272 AMI.HMI 未修改;后续小屏同步见 小屏验证报告。

需求依据与状态定义

只读核对用户提供的 D:/QQ download/A11.盐城工学院野马车队ASF9.2最终版.docx:AMI“操作界面”要求显示 AS Ready 等状态,系统 AS 状态描述包含 AS OFF、AS Ready、AS Driving、AS Finished、AS Emergency 和 Manual Driving 分支。原 ASF 未修改。

ASF 说明状态含义,未分配本次自定义 CAN 字节或枚举。AMI/VCU 接口约定 byte5=0..5 对应上述顺序,byte3 bit3=1 表示 AS 有效,byte7=2;byte6 保留为零。VCU 必须发送实际状态,AMI 不从任务号、锁定、EBS 或 ASSI 灯色推断。

标准 0x183 / DLC 8 示例:02 01 01 0F 00 01 00 02 = 直线加速、已锁定、AS Ready、EBS 正常。旧版本 1 仍按原规则接受,但无人状态立即显示未知。连续超过 500 ms 无合规反馈后四项均未知;非法帧不续期。完整字节布局、兼容及枚举见 CAN 说明。

软件验证结果

检查 结果与证据边界
Debug / Release 构建 均通过,Debug Flash 28,728 字节、Release Flash 16,672 字节、RAM 2,656 字节
实际 ARM 固件仿真 两个 ELF 均通过。每个 ELF、每路 CAN 覆盖 7 个任务 × 6 个 AS 状态 × 16 种有效标志,合计 2,688 组;并检查 UART 命令、旧版兼容、非法 DLC/版本/枚举/保留/扩展/远程/FD、超时边界、tick 回绕、其他流量不续期、恢复及周期重同步
双前轮轮速回归 两个 ELF 均通过原轮速解码、舍入、非法格式及独立超时检查
DBC 与文档 两份 DBC 严格解析、共用布局、固件宏、位时序、183 条已知报文检查通过;CAN1 13 报文/53 信号,CAN2 12 报文/49 信号;原 SDC DBC 对照通过,生成文档一致性通过
HMI 编译 当前 800×480 工程编译成功,0 错误、0 警告,TFT 8,863,680 字节
官方模拟器 AS OFF/Ready/Driving/Finished/Emergency/Manual Driving 及未知共 7 种显示通过状态回读、颜色像素和截图检查;跨页最新状态重绘、任务确认不改写 AS 通过
CAN PDF 已重新生成,17 页;渲染检查全页版面及新增 VCU 字节表,无溢出或重叠

构建及 ARM 仿真不证明物理 CAN/UART、触摸或车辆状态正确。模拟器通过不等于下载实物屏幕;首次软件交付时未烧录 MCU、未下载屏幕、未发送现场 CAN 测试帧;后续烧录和 CAN1 实测结果见下方新增验收节。

证据目录:as-status,包含 固件仿真、轮速回归、DBC 检查、HMI 编译、模拟器记录 和 当前产物清单。

锁定状态右侧的 AS Ready

实物接入

使用 新版 MCU BIN 和 新版屏幕 TFT,同时让 VCU 按版本 2 发送真实状态;CAN1 500 kbit/s,CAN2 250 kbit/s。实物验收分别检查原始 0x183、MCU 解码、USART2 输出和实际页面;停止反馈应在 500 ms 后变为未知,恢复后重现实际状态。

本次未提交或推送 Git;历史提交、烧录和联调报告保留原日期与版本。

2026-10-07 烧录与实际 CAN1 串口验收

v2.7 已通过 SWD 写入并复位。ST-LINK 37FF71064E573436188C1543,Device ID 0x467,128 KB Flash,读取供电 3.24 V。烧录前保存完整 131,072 字节 Flash;烧录后读取完整 128 KB,其中程序区 16,672 字节与发布 BIN 逐字节一致,SHA-256 为 1951c63e779429d08a992d1171fc92173e4399307ff741fdc5d9b7646848855d。

最初 CAN1 无心跳且进入 bus-off,用户确认遗漏板子 5 V 供电;补上 5 V 后复位,CAN1 500 kbit/s 恢复。基线捕获 31 帧 0x301,间隔 99.909~100.095 ms,PCAN 状态为 0。此结果不能外推为自动 bus-off 恢复测试。

验收层 结果
实际 CAN1 → MCU 37 项检查通过,SWD 回读实际 RAM:AS 0..5、16 种有效标志、旧版 1 清除 AS、非法 AS/保留位/标志/版本不续期、其他 CAN 流量不延长 500 ms 有效期及恢复
MCU → USART2 → COM6 9600 8N1;首次烧录捕获 1,479 字节,完整未知状态命令可见;硬件状态验收捕获 4,796 字节、350 条完整命令。六种 AS 值及超时未知命令含真实 FF FF FF 结束字节
COM6 → MCU → 实际 CAN1 输入 AA 55 01 05 0D 0A 后抓到真实 0x300 任务 5 请求,实际任务/AS 仍由 VCU 反馈决定
实际 CAN1 → MCU → COM6 → 官方 HMI 调试器 16 项新增状态检查通过:六种 AS 显示、无效、旧版、超时、恢复、跨页最新状态;触摸确认经物理 UART 和 MCU 输出实际 CAN 请求
串口重连 初次串口中途接入出现一次 1A 变量名无效返回;清空日志并重新连接后,8 秒持续反馈及重同步期间无错误返回,PCAN 状态为 0

显示检查采用实际 RAM、AS 区域颜色像素和截图联合验证。部分全屏截图捕获了模拟器重绘中的缺字/裁切画面,整页稳定刷新仍需实物屏幕确认;此次新增状态区域与数据链路检查通过。测试数据由 PCAN 注入,未接入真实 VCU 进行车辆状态裁决;未测试车辆执行动作。

本次尚未下载或验收实物串口屏,CAN2 亦未接入测试。 本次烧录后没有修改固件 BIN,未提交或推送 Git。

证据:验收汇总、烧录与 COM6 抓取、完整 Flash 备份、烧录后完整回读、37 项硬件检查、16 项实际串口显示检查、串口重连记录。

CAN 与实际串口驱动的无人状态超时画面