XCD MCU 线刷教程

本文档基于 p03

P1 相关:N801 调试说明——P1 阶段

硬件连线

电源线

  • 黄色的印有 ACC 的线和 2 根红色的印有供电 的线首位相连,ACC 线在前端
  • 2 根黑色的印有供电地 的线首位相连。

debug 板

下图中绿色的为 debug 板,起到连接 MCU 调试器、烧录器和串口 的功能。

新旧版本 debug 板的区别

  • 新版的串口是 type c,旧版的不是。
  • 旧版的额外有一个由杜邦线连着的小绿板,需要通过此小板子连接调试器和烧录器。
  • 新版的接口直接在 debug 板本体上,因而没有小板。

连接

  • debug 板通过自带的线连到 XCD 背面的接口,注意如果感觉无法插入说明插反了,不要硬怼
  • 板子上方红圈内的 typec 为 串口,连接到电脑。
  • 右侧红圈内接口连接 调试器和烧录器

拨杆

  • 最新 master 代码需要把 debug 版中最左侧拨杆 向上拨
  • 第三代 debug 板拨杆:一排位于下方时,从左到右:上中中中上上上中上上;上方:中中上上

烧录器 miniwiggler2

通过自带线材,一端连接到 debug 板,另一端连接到电脑。

使用软件刷写

安装 memtool

若要使能 SOTA,使用新版(老版本如 4.7 没有相关选项),然后安装 DAS(一般电脑都是 64 位的,安装时选 win64,除非很老的电脑)。

从 daily build 下载固件

下载 mcu daily build 打包平台打包的固件,或者从 rom 平台下载外设包 hardware.zip,解压后里面 mcu.zip 继续解压:ALL.hex

打包平台:https://cloud.mioffice.cn/#/product/file-store/objects/test-ci-package(进入网页,依次选择对应月份 → mcu_version → xcd → 对应分支 → daily-build → 对应日期)。

打开 memtool,配置 cfg

  1. 机器上电,打开 memtool(miniwiggler 的软件),在弹出的窗口导入下方的 cfg 文件。
  2. 点击 connect,等一段时间后出现 Ready for Memtool Command 后表明 memtool 连上了板子。

如果完成上面所有操作还连接不上,请:

  • 重试:重启电脑 XCD 和软件、重新插拔所有线束。
  • 控制变量法:一点点换硬件确认是哪个硬件的问题。

更新 UCB

如果是全新的板子,参考 XCD MCU 更新 UCB 以及代码刷写流程 先刷 UCB 再进行后续操作。(p1 及以后不需要此步骤

使能 SOTA 模式

🎨 若板子内 MCU 已经是 2024.03.20 及以后的,无需进行此步骤

MCU OTA 需要 AB 双 bank,为了能够进行 OTA,每个板子需要进行 1 次以下操作:

  1. 在 miniWiggler 中选择 Device → UCBs
  2. 选择 UCB_SWAP,如果 Current memory 为 SOTA mode disabled,要进行后续操作。
  3. 选择 UCB_OTP,勾选 Enable SOTA mode,然后点击 Write configuration

🌅 重要提醒(重要的事情说三遍) 在弹出的窗口不要点 Set UCB to confirmed state!!! 点击后再也无法改变这个选项!!!

  1. 点击右下角 ok 后 断电重启

如果 enable 处为灰色

  • 点击 UCB_SWAP,SWAPCTRLADDRCFG 选择 Use standard PFLASH mapping,然后点击 Write configuration 将 SWAPCTRL 刷入后再进行 enable 操作。
  • 操作后断电重启,在此进入 UCB_OTP 可以发现已经 enable 了。

选择 hex 文件,开始刷写

📝 出现 warning 可以忽略,继续后续操作。

  1. 点击 Open File,选择刚刚下载的 ALL.hex
  2. 依次点击 Select AllAdd Sel.Program,开始刷机。
  3. Result 为 success 表面 hex 成功 down 进去。
  4. 然后点击 ExitVerify,Result 为 0 differences detected (all Flash devices) 表明经过验证没有问题。
    • memtool 每一步操作可能卡顿转圈,需耐心等待。

重启,查看串口日志

成功后断电重启,可以通过 MCU 串口Android ADB 确定 MCU 和 SOC 正常工作。

注意事项:

  1. Android ADB 启动时间比较长,注意验证等待时间。
  2. 连接 MCU 串口的方法(以 mobaxterm 为例):
    • 点击 Session,弹出的窗口选择 Serial。
    • Serial port 选择 USB Serial Port 中 COM 数值最小的。
    • Speed 选择 115200,点击 ok,即可看到串口打印日志。

串口看不到日志可能需要在设备管理器安装驱动。win11 MCU 串口要安装驱动(参考 https://blog.csdn.net/sunLiuLiShiPin/article/details/131532760)。

短链接:https://s.mi.cn/upFqYwVD