MCU刷写避坑指南
准备工作
- 安装 IAR 软件和获取网络 license:IWindowIAR安装调试—PE烧写文件
- MCU 版本下载地址:智能座舱mcu构建流程
- 刷机规范流程:高低配的机器,9008刷机规范流程
- HSE 固件烧录:HSE固件没烧录
问题总结
1. 高/低配机器 ACC 虚焊导致 MCU 休眠掉电
某些高配或低配机器的 ACC 线是虚焊的,在 9008 模式下刷 SOC 时,MCU 会触发休眠从而掉电(电流从 0.8 掉到 0.2),导致刷机失败。这时需要先刷不休眠版本的 MCU,更新完 SOC 后再刷正常的 MCU 版本。MCU 8 月 3 号之后的版本已解决。
方案一:保证不发 PCAN、不连 ACC 的情况下,MCU 在 9008 时不会给 8925 下电
[附件(token=H1VHb6uOZoyUAzxN1J8c2laGnRd)]
方案二:MCU 版本目前构建六种编译版本(参考 智能座舱mcu构建流程),其中包含:
- AccNotify(临时版本,可通过 ACC 电源唤醒)
- NoSleep(临时版本,不休眠)
可下载 NoSleep 版本,保证不发 PCAN、不连 ACC 的情况下 MCU 在 9008 时不会给 8925 下电。
2. PE 刷机出现 Can't communicate with the target processor
这属于接触不良的现象。
- 目前可通过更换 PE 或者金手指解决
- 或者多试几次
3. 刷完 MCU 后电流一直为 0.02
这属于 HSE 未安装的现象,参考 HSE固件没烧录,可联系李权。
4. MCU 起不来可刷此版本(清 flash)
需要清除 flash,可刷写如下 MCU 版本进行清除,然后再刷正常的 MCU 版本。
[附件(token=AFjPb7R5SoLGLPxOql1ctjpSnee)]
5. 通过 fastboot 刷写 MCU,2 分钟左右 MCU 会重启 DCD
原因:MCU 与 SOC 之间的心跳是开启的,需在 SOC 侧关闭心跳。
关闭心跳命令(QNX 串口):
echo 'heartbeat:json:{"hb_switch":"off"}' >> /tmp/pps/system_monitor/service打开心跳:echo 'heartbeat:json:{"hb_switch":"on"}' >> /tmp/pps/system_monitor/service
6. A 样机器刷带功能安全版本的 MCU 后,电流为 0.04A
原因:服务器编出来的版本起不来是因为功能安全导致。功能安全适配的是 S32K324 芯片,A 样的机子是 S32K344 芯片,A 样的机子刷带功能安全的版本就会起不来。
目前无法解决。