0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用MM32-Link MINI对MM32G0001恢复出厂设置

灵动MM32MCU 来源:灵动MM32MCU 作者:灵动MM32MCU 2023-10-13 09:47 次阅读

工程师在开发产品的过程中使用调试仿真工具下载程序,用于调试程序是否按预期的业务逻辑实现了产品功能,但在开发过程中可能会遇到一些特殊情况需要对MCU恢复出厂设置。

工程师在开发产品中调试产品功能时出现以下行为时需对MCU恢复出厂设置:

MCU程序运行立刻进入低功耗停机模式或待机模式(注:未配置正确的唤醒源或唤醒引脚唤醒时间不够)。

MCU工程软件程序设置了选项字节对Flash区的固件读保护。

MCU端基于SWD协议的程序下载接口PA13和PA14被复用成其它外设功能,程序运行时下载口被复用的外设功能占用。

用户应用层软件误操作擦除了芯片选项字节导致芯片自锁,导致SWD无法继续下载程序。

本示例应用举例以MM32G0001为例,因为用户程序误操作等情况导致芯片自锁,使得调试器无法调试、读取或下载程序,那么MCU开发过程中遇到以上这些行为现象时,可以通过MM32- Link MINI和MM32-Link Utility上位机软件对MCU进行恢复出厂设置,解决SWD程序下载口被外设功能复用等占用问题。

1

需准备的工具

MM32-Link MINI调试器

MM32-Link升级工具(MM32-Link MINI调试器固件升级工具)

MM32-Link Utility(MM32-Link MINI调试器上位机软件)

如下图1所示可通过灵动官网www.mindmotion.com.cn下载MCU恢复出厂设置所需工具软件,单击灵动官网导航条中的支持栏,然后单击开发工具栏中的调试与下载工具,如下图2所示,在弹出的网页中,单击MM32-Link MINI仿真器

wKgZomUooh-AFWMPAABmW7DN2Gg331.jpg

图1

wKgZomUooh-AQ91DAAFRansP4I4131.jpg

图2

如下图3所示,在弹出的网页中分别单击下载MM32-Link升级工具和MM32-Link Utility上位机软件,该软件与MM32-Link MINI配套使用。

wKgaomUooh-AQQVrAAH5DzZBD0g834.jpg

图3

MM32-Link升级工具和MM32-Link Utility上位机软件下载完成后,在电脑端分别双击运行MM32-Link升级工具和MM32-Link Utility软件,按照软件安装向导的提示安装好MM32-Link升级工具和MM32-Link Utility软件。

2

对MM32-Link MINI进行固件升级

如下图4所示,MM32-Link MINI调试仿真器与电脑USB接口连接,然后双击MM32_Link Upgrade快捷方式图标运行MM32-Link Upgrade软件,如下图5所示。

wKgaomUooh-ASrEJAABOACDE40c967.jpg

图4

如下图5所示,通过MM32_Link Upgrade V1.01为MM32-Link MINI更新固件,在Choose Version栏中的Version下拉选项选择固件版本为20230608,然后单击Upgrade按钮更新MM32-Link MINI固件,稍等片刻在Upgrade Logs栏会打印输出MM32-Link固件更新成功信息

wKgaomUooh-APDtEAAGtd4T2qxg190.jpg

图5

3

SWD口PA13和PA14复用为GPIO功能

如下图6所示,本演示示例以MDK Keil IDE环境打开LibSamples_MM32G0001库函数例程中的GPIO_SWD_Remap例程,该例程把基于SWD协议的程序下载口PA13和PA14复用成GPIO功能,使用该例程为本示例后文用于演示恢复出厂设置做准备。

wKgaomUooh-AabQcAAAXhdhbxS8463.jpg

图6

如下图7和图8所示,分别为MM32-Link MINI接线图以及通过20pin排线与MM32G0001核心板连接实物图,其中MM32-Link MINI调试仿真器的DIO和CLK接口分别连接MM32G0001核心板的SWD接口PA13和SWCLK接口PA14,MM32-LINK MINI调试仿真器的TVCC和GND分别连接MM32G0001核心板的VDD和GND,并把核心板MCU端的VDD连接到MM32-Link MINI的VREF参考脚(注:如果MM32-Link MINI内部短接了VREF脚无需外接VDD),使得MM32-Link MINI识别MM32G0001核心板端的供电电压,以便于匹配SWD时序电平。

wKgZomUooh-ADyc5AAHjLltPKlg708.jpg

图7

wKgZomUooiCAWH8PAAWoDxf5C2w141.jpg

图8

在MDK Keil IDE环境中按快捷键F7编译LibSamples_MM32G0001_v0.9.1库函数例程中的GPIO_SWD_Remap为GPIO功能的例程。如下图9 Build Output窗口所示提示编译成功。按快捷键F8把编译的程序通过MM32-Link MINI下载到MM32G0001核心板。如下图10 Build Output窗口打印Logo提示程序下载成功。

wKgaomUooiCAMkR_AACZPudSShk121.jpg

图9

wKgZomUooiCAMKXAAAEItDwpOxI858.jpg

图10

MM32G0001需要重新上电,GPIO_SWD_Remap的程序才会执行。然后按快捷键F8重新烧录程序,如下图11所示,提示SWD通信失败,原因是MM32G0001的SWD程序烧录接口PA13和PA14已经被复用为GPIO功能并正在运行GPIO翻转功能的程序,因此提示SWD通信失败。遇到这种情况可以通过MM32-Link MINI结合MM32-Link Utility上位机软件对MM32G0001恢复出厂设置,恢复SWD下载程序功能。

wKgZomUooiCARLYhAABG1VZQKpw860.jpg

图11

4

对MM32G0001恢复出厂设置

保持MM32-Link MINI与电脑端和MM32G0001核心板的连接,双击MM32-Link Utility快捷方式图标启动MM32-Link Utility软件,该软件会自动与MM32-Link MINI建立连接。启动后的界面如下图12所示。

wKgaomUooiCAZQCEAAIiwHn7Rp0546.jpg

图12

如下图13所示,在MM32-Link Utility V1.08上位机软件的菜单栏单击Setting->MM32-Link Config

wKgaomUooiCAR1ctAAEXw3Ur34w526.jpg

图13

如下图14所示,在弹出的MM32-Link Config界面可以配置MM32-Link MINI调试器仿真器的TVCC引脚对外输出3.3V或5V电压给目标芯片MCU供电,本示例配置TVCC对外输出5V供电给MM32G0001核心板LDO输入转3.3V输出给MM32G0001供电,同时也可配置是否开启蜂鸣器声音提示和下载程序的Speed。

wKgaomUooiCAFP_SAACp_Nk6qHQ337.jpg

图14

如下图15所示,单击MM32-Link Utility V1.08软件菜单栏的Project->New Project或按快捷键Ctrl+N键新建MM32-Link Utility恢复出厂设置工程。

wKgZomUooiCASAxbAADaRF_qZIY297.jpg

图15

如下图16所示,在弹出的New Project窗口中Base选项卡Project栏中Name栏自定义填写待恢复出厂设置的MCU的型号或系列名称,本示例以MM32G0001为例作为填写,在Chip Choose栏Series系列下拉选项卡中选择MM32G0001系列,Part No下拉选项选择MCU的具体型号,本示例选择MM32G0001A6T,在File栏单击“…”按钮,选择MM32G001库函数例程中的任意一个例程,这里以选择GPIO_LED_Toggle例程为例(如果只是恢复出厂设置File栏也可不做加载选择,本示例为了演示新建工程的操作步骤作为选择项)。

wKgaomUooiCADtZCAANwM2IjVM4708.jpg

图16

如下图17所示,进入GPIO_LED_Toggle例程Objects目标文件夹加载GPIO_LED_Toggle.hex文件,然后单击打开即可。

wKgZomUooiCAbUsSAANVDWaE7Uk214.jpg

图17

如下图18所示,在New Project界面的Descript栏中用户可以自定义新建恢复出厂设置的工程描述本示例自定义Factory Reset描述,即恢复出厂设置,然后单击OK。

wKgZomUooiCAJQqnAALUzlWiuso642.jpg

图18

如下图19所示为新建好的MM32G0001恢复出厂设置的工程,即Factory Reset工程。

wKgaomUooiCAVqJJAAxpkTe7LeQ052.jpg

图19

如下图20所示,单击MM32-Link Utility V1.08软件菜单栏Operate->Erase Chip使得MM32G0001恢复出厂设置。

wKgaomUooiCANwJIAAkGbkCSeX0873.jpg

图20

如下图21所示,MM32-Link Utility V1.08 上位机软件Logo栏打印信息提示为Chip erase--->Successfully,此时MM32G0001已成功恢复到出厂设置。

wKgaomUooiCAU-h0AAukfF3gwsM391.jpg

图21

如下图22所示在MM32-Link Utility V1.08软件菜单栏单击Operate->Disconnect断开MM32-LINK MINI与MM32-Link Utility软件的连接,然后重新给MCU上电恢复出厂设置即刻生效。

wKgZomUooiCAAk1-AAEs0ZEh7BM922.jpg

图22

5

恢复了出厂设置验证

如下图23所示,使用MDK Keil IDE打开LibSamples_MM32G0001库函数例程中的GPIO_LED_Toggle翻转例程,按快捷键F7编译工程。

wKgZomUooiCADBhzAAAaEDyxiaQ848.jpg

图23

在MDK Keil IDE环境下按快捷键F8下载MM32G0001库函数例程中的GPIO_LED_Toggle翻转例程到MM32G0001核心板,以验证MM32G0001是否通过MM32-LINK MINI使用MM32-Link Utility上位机软件恢复了出厂设置。如下图24所示,在MDK Keil IDE的Build Output打印的Logo信息提示下载的程序的工程名称为GPIO_LED_Toggle,Programming Done.Verify OK. 说明MM32G0001通过MM32-LINK MINI使用MM32-Link Utility上位机软件恢复了出厂设置,并可以在MDK Keil IDE环境中重新下载新的例程。

wKgZomUooiCAN9zgAAFtuNSA_r0305.jpg

图24


审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17143

    浏览量

    351142
  • 仿真器
    +关注

    关注

    14

    文章

    1018

    浏览量

    83739
  • 上位机
    +关注

    关注

    27

    文章

    942

    浏览量

    54806
  • 调试器
    +关注

    关注

    1

    文章

    304

    浏览量

    23739
  • Flash存储
    +关注

    关注

    0

    文章

    38

    浏览量

    8289
  • SWD
    SWD
    +关注

    关注

    1

    文章

    57

    浏览量

    11836
  • MM32
    +关注

    关注

    1

    文章

    106

    浏览量

    761

原文标题:灵动微课堂 (第273讲)|使用MM32-Link MINI对MM32G0001恢复出厂设置

文章出处:【微信号:MindMotion-MMCU,微信公众号:灵动MM32MCU】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    灵动微电子 | MM32-LINK教程系列之四:MM32-LINK密码设置

    本帖最后由 MMCU5721167 于 2018-11-8 09:51 编辑 来源:灵动微电MMCU1、设置设备保护密码和操作密码 将MM32-LINK通过USB电缆与电脑连接,打开
    发表于 11-08 09:47

    MM32-Link试用过程

    `拿到MM32-Link有一段时间了,经过一段时间的使用感觉还不错,现将使用经验分享给大家,共同进步。MM32MCU是上海灵动微电子股份有限公司生产的系列芯片。MM32-Link是其产品的专用下载
    发表于 11-30 22:41

    eMiniBoard MB-025 如何恢复出厂状态?

    1、eMiniBoard MB-025的烧录驱动芯片MM32L373被我按照官网的应用手册《AN0005_芯片恢复出厂设置使用说明_V1.4》操作后删除了内部固件,导致无法烧录程序,USB接线后,电脑的设备管理器中无法识别
    发表于 08-11 13:56

    MM32-LINK使用教程 —— 使用小技巧

    MM32-LINK Program在使用的时候有很多的使用小技巧,本章节就给大家介绍一下这些使用小技巧,让我们在使用MM32-LINK的时候更加的灵活、...
    发表于 02-07 12:15 1次下载
    <b class='flag-5'>MM32-LINK</b>使用教程 —— 使用小技巧

    MM32-LINK使用教程 —— 串口功能及硬件连接方式介绍

    MM32-LINK编程器功能丰富,在前几讲为大家讲解了MM32-LINK各种丰富的功能,但是最近有朋友在使用MM32-LINK 进行编程操作的时候,针对不...
    发表于 02-07 12:15 2次下载
    <b class='flag-5'>MM32-LINK</b>使用教程 —— 串口功能及硬件连接方式介绍

    MM32-LINK使用教程——编程计数功能

    在上一章节我们为大家介绍了MM32-LINK Program的规则编程功能与读写保护功能,今天就为大家介绍一下关于MM32-LINK Program编程计数功能...
    发表于 02-07 12:16 0次下载
    <b class='flag-5'>MM32-LINK</b>使用教程——编程计数功能

    MM32-LINK使用教程——读写保护操作

    MM32-LINK编程器功能丰富,在上一讲我们为大家介绍了MM32-LINK Program的规则编程功能,最近小编被多次问到MM32-LINK Program是否有FLAS...
    发表于 02-07 12:16 0次下载
    <b class='flag-5'>MM32-LINK</b>使用教程——读写保护操作

    MM32-LINK使用教程 —— 编程规则设置

    MM32-LINK可以帮助MM32 MCU用户在Flash的某一存储区域存储用户自定义信息,方便用户根据存储的信息可以做产品跟踪、校验或者加密等功能...
    发表于 02-07 12:17 1次下载
    <b class='flag-5'>MM32-LINK</b>使用教程 —— 编程规则<b class='flag-5'>设置</b>

    灵动MM32-LINK使用教程 —— 远程授权编程

    MM32-LINK编程器功能丰富,小编会一一为大家教学各个功能的使用方法,今天小编将为大家教学MM32-LINK编程器强大的的远程授权编程功能。
    发表于 02-07 12:23 2次下载
    灵动<b class='flag-5'>MM32-LINK</b>使用教程 —— 远程授权编程

    MM32-LINK使用教程 —— 使用小技巧(一)

    MM32-LINK Program在使用的时候有很多的使用小技巧,本章节就给大家介绍一下这些使用小技巧,让我们在使用MM32-LINK的时候更加的灵活、方便、快捷。
    发表于 02-09 11:44 2次下载
    <b class='flag-5'>MM32-LINK</b>使用教程 —— 使用小技巧(一)

    MM32-LINK使用教程 —— 串口功能及硬件连接方式介绍

    MM32-LINK编程器功能丰富,在前几讲为大家讲解了MM32-LINK各种丰富的功能,但是最近有朋友在使用MM32-LINK 进行编程操作的时候,针对不同的编程方式的硬件连接以及串口功能还有些疑问,今天就给大家详细介绍一下
    发表于 02-09 11:49 3次下载
    <b class='flag-5'>MM32-LINK</b>使用教程 —— 串口功能及硬件连接方式介绍

    MM32-LINK使用教程 —— 远程授权编程(一)

    MM32-LINK编程器功能丰富,小编会一一为大家介绍各个功能的使用方法,今天小编将为大家介绍MM32-LINK编程器强大的的远程授权编程功能。
    发表于 02-09 11:50 0次下载
    <b class='flag-5'>MM32-LINK</b>使用教程 —— 远程授权编程(一)

    MM32-LINK使用教程 —— 编程规则设置

    MM32-LINK可以帮助MM32 MCU用户在Flash的某一存储区域存储用户自定义信息,方便用户根据存储的信息可以做产品跟踪、校验或者加密等功能,MM32-LINK 编程器在线编程模式下,开始自动编程及每次编程成功后时…
    发表于 02-09 11:53 4次下载
    <b class='flag-5'>MM32-LINK</b>使用教程 —— 编程规则<b class='flag-5'>设置</b>

    MM32-LINK使用教程——读写保护操作

    MM32-LINK编程器功能丰富,在上一讲我们为大家介绍了MM32-LINK Program的规则编程功能,最近小编被多次问到MM32-LINK Program是否有FLASH读写保护功能及如何使用等一系列问题。
    发表于 02-09 11:55 2次下载
    <b class='flag-5'>MM32-LINK</b>使用教程——读写保护操作

    灵动发布入门级MM32G0001系列MCU

    灵动股份推出全新超值型 MM32G0001 系列 MCU。2023 年初,灵动首次发布了其主打高性价比的 MM32G 系列,目前已陆续推出了 G0140,G0160 和
    的头像 发表于 05-14 10:30 1676次阅读
    灵动发布入门级<b class='flag-5'>MM32G0001</b>系列MCU