打印
[XMC™]

关于XMC1302BMI修改的介绍

[复制链接]
1435|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
XMC1302是英飞凌推出的一款明星产品,通常被用于通用电机控制和电源储能控制上。XMC1302的样片天生下来是ASC模式,无法通过SWD口Debug以及烧写,为了偏于调试和烧写,需要把BMI修改为Debug SWD模式,下面是修改BMI的一些方法:

一、修改BMI的工具
建议使用官方JLINK调试板,它与通用JLINK是有区别的,可以更改BMI,还有一路串口。如图1所示
图1XMC1302评估板KIT_XMC13_BOOT_001示意图
型号:KIT_XMC13_BOOT_001
使用方法:将子板用手直接掰断,变为图2所示:
图2XMC的Jlink调试子板
这个时候,电控板需要接线到Jlink子板,如图3所示:
图3XMC的Jlink调试子板接线示意图
其中对应的引脚定义如表1所示:

2
SDIO
GND
RX
1
SWCLK
VCC
TX
表1XMC1302接线示意表

这个时候,需要利用Mentool工具,接线连接MCU 的串口烧写引脚(上表1中的RX,TX),可以是P0.14,P0.15 或者 P1.2,P1.3修改如下(章节1)所示的BMI配置,使MCU能够执行用户应用程序
由于我们Debug习惯使用SWD接口,我们需要利用英飞凌Dave软件将串口烧写模式改为SWD烧写调试模式,如章节2所述。
也可以通过软件XMCFlasher来进行BMI的修改,如章节三所示,这样修改起来会更加的快捷,更加的方便!
其中将电机电控板的 SDIO、SWCLK、VCC和GND接线至电机控制板如上表1所示,即可连接Keil进行Debug。
二、关于XMC1300 BMI
2.1 MemTool烧写程序与更改BMI
对于 XMC1000 的 MCU,芯片出厂后默认的 BMI 是 ASC_BSL 模式,即串口烧写模式。在这个模式下可以使用 MemTool 通过串口对 MCU 进行烧写。MCU 的串口烧写引脚可以是P0.14,P0.15 或者 P1.2,P1.3。
但是烧写完后,很多人会遇到一个问题,烧写完程序后代码不能运行。这是怎么回事呢?因为程序虽然烧进去了,但是 MCU 依旧处在 ASC_BSL 模式,在这个模式中程序***呆在Burn-In ROM 中执行,不会跳到用户程序执行。
其实 MemTool 中有一个功能是在烧写完程序后修改 BMI,利用这个功能在烧写完程序把BMI 修改为 User Mode SWD0 后,用户代码就能运行了。
下面步骤完成这个设置:

2.1.1 打开 Device | Setup…

2.1.2在 Program 一栏中勾选”Set boot mode after program”, 选择烧写程序后要设置的 BMI.

注意:
这样烧写完后,BMI 就自动修改了。需要注意的是,修改为 User Mode SWD0 后,MemTool将不能再次对 MCU 进行烧写,因为 P0.14,P0.15 已经被配置为 SWCLK 和 SWDIO (不再是 UART)。如果需要继续使用 MemTool 烧写,需要在 DAVE 中把 BMI 再改为 ASC_BSL模式。同时SWD0模式下可以用JLINK进行调试
2.2、DAVE更改BMI
XMC1300 空白芯片默认 BMI 是串口 ASC 模式,需要更改 BMI 为 SWD 或 SPD 模式后才能在 KEIL 的环境下进行仿真和烧录。使用 DAVE3或 DAVE4 自带的 BMI 设置工具可以很方便更改 BMI
2.2.1Dave 界面图

2.2.2点击 Get BMI 按键,读取芯片 BMI 值,可见空白片默认“ASC”

2.2.3在下拉菜单里选择 User MODE(DEBUG)SWD0(SWDIO=P0.14,SWDCLK=P0.15),点击 SET BMI

2.2.4再点击一下 GET BMI 按键,可以读出最新状态,确认无误,更改完成。

2.3 基于XMCFlasher对XMC1302进行BMI的修改
下载完XMCFlasher后,打开XMCFlasher软件如下图所示

此时按照表1来进行接线,接线连接MCU 的串口烧写引脚(上表1中的RX,TX),可以是P0.14,P0.15 或者 P1.2,P1.3。
此时点击Connect,会出现如下图所示的芯片选择界面,选择XMC1302-Flash大小,根据电机控制板上的XMC1302的型号选择即可,这里我选择的是开发板母版上的搭载的XMC1302-0200

此时,如果得到UniquechipID,则表示已经连接成功

此时,选择BMIGetSet

出现以下界面

单击GetBMI,我们可以得到目前芯片的BMI设置

如果需要选择修改BMI,点击上图下方的Select,选择需要的BMI后,再点左边的SetBMI即可完成BMI的修改

接下来,点击Configurations中的 Setup

设置成如下选项即可开启SEGGERJlink调试模式,连接Keil即可调试!


使用特权

评论回复
沙发
IFX_OwenSu| | 2023-11-16 10:49 | 只看该作者
  感谢分享!
  补充:我们其实也可以通过J-LINK Commander来获取/修改BMI,只需输入getBMI或者setBMI即可。



J-LINK .png (58.79 KB )

J-LINK .png

使用特权

评论回复
板凳
zwsam| | 2023-11-17 09:33 | 只看该作者

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

27

主题

41

帖子

3

粉丝