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

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

3天内不再提示

GD32 MCU超频后无法再次下载程序的解决办法

聚沃科技 2024-01-12 09:43 次阅读

我们知道,MCU的系统时钟主频就相当于人的心跳或脉搏,为所有的工作单元提供时间基数,所以一般在程序最开始的地方都需要进行主频配置。

GD32固件库中提供了多种宏定义,可以很方便的将系统时钟配置为想要的频率。

wKgaomWgmOmAb-nUAACgDdUb54E230.png

GD32固件库中所用的外部晶振配置一般为8M或25M,如果想要使用其他频率的晶振,可以参考FAQ《更改晶振后如何修改配置》。

有的小伙伴在做好PCB后,将程序下载进去发现运行异常,想要仿真查下原因时,发现下载不了程序了,这时候就要注意,是不是板子上的晶振和程序中配置的不匹配?比如程序中使用的晶振大小为8M,但板子上的是12M的晶振,结果你以为配置的是120M的主频,实际变成了180M了,这超频可太多了,当然就无法再下载程序啦。

wKgZomWgmO2AeswxAAAW79DlWog060.png

wKgaomWgmPOAV5KWAAASwSESgRw977.png

那如何解决这个问题呢?有个方法就是让MCU进入ISP模式,小伙伴们可以参考FAQ《GD32 MCU进入低功耗模式导致无法再进行程序下载怎么办?》中的“方法一”,和超频无法下载类似。

我们今天讲述另一种方法,那就是启动MCU的时候,用镊子把外部晶振的OSC_IN和OSC_OUT脚短接起来,然后把程序擦除即可。没错,就是这么简单粗暴。

wKgZomWgmPiAf4TXAA1RZXu-B5E098.png

原理其实也很简单,使用GD32 固件库时,一般在进入main函数之前都会进行系统时钟配置,配置函数中在开启外部晶振后会有等待晶振稳定的过程,如果在一定时间内无法稳定,则会进入while(1)循环(小伙伴们可以自行增加超时退出的操作哦),在这个过程中,MCU实际是使用内部高速晶振在跑的,没超频,当然就可以擦除程序啦,用镊子短接晶振,就是为了让晶振状态无法稳定,是不是很简单呢?

wKgZomWgmPyAKPuYAABWIwqRMnw623.png

利用类似原理,其实还有其他操作也可以解决,小伙伴们有想到吗?没错,就是把晶振从板子上拆下来,等程序被擦除后,再焊接回去。

其实这个方法也适用于进入低功耗后无法下载的问题,当然前提是用的外部晶振。

好了,今天的内容就这些,如果还没有学废,那就评论区聊聊吧~记得点赞收藏加关注

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

    关注

    6043

    文章

    44617

    浏览量

    638065
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17316

    浏览量

    352440
  • 嵌入式
    +关注

    关注

    5092

    文章

    19176

    浏览量

    307317
  • 硬件开发
    +关注

    关注

    3

    文章

    159

    浏览量

    24267
收藏 人收藏

    评论

    相关推荐

    常见MCU故障及解决办法

    微控制器单元(MCU)是现代电子设备中的核心组件,负责处理和控制各种功能。然而,由于各种原因,MCU可能会出现故障。以下是一些常见的MCU故障及其解决办法: 1. 电源问题 故障现象:
    的头像 发表于 11-01 13:41 2653次阅读

    GD32 MCU入门教程】GD32 MCU GPIO 结构与使用注意事项

    本文是专门为基于GD32 MCU开发的工程设计人员提供,主要介绍了GPIO的功能配置、内部结构以及在不同场景使用时的注意事项,旨在帮助GD32 MCU开发者优化对通用型输入输出端口(G
    的头像 发表于 09-07 10:34 882次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>入门教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> GPIO 结构与使用注意事项

    GD32 MCU 入门教程】GD32 MCU FPU 使用方法

    GD32 MCU FPU 使用方法
    的头像 发表于 08-25 09:24 718次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入门教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> FPU 使用方法

    GD32 MCU 入门教程】GD32 MCU 常见外设介绍(14)RTC 模块介绍

    GD32 MCU内部提供了一个RTC(实时时钟)模块,通过RTC可以实现日历时钟、闹钟等功能。RTC也可以用于深度睡眠或待机模式的低功耗唤醒。不同系列的GD32 MCU在RTC设计和功
    的头像 发表于 08-23 09:18 566次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入门教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常见外设介绍(14)RTC 模块介绍

    GD32 MCU 入门教程】GD32 MCU 常见外设介绍(12)FMC 模块介绍

    闪存控制器(FMC),提供了片上闪存需要的所有功能。FMC 也提供了页擦除,整片擦除,以及32 位整字或 16 位半字编程闪存等操作。 GD32 MCU 支持不同类型编程的具体说明如下表 GD32
    的头像 发表于 08-21 09:56 1289次阅读
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入门教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常见外设介绍(12)FMC 模块介绍

    GD32 MCU 入门教程】二、GD32 MCU 烧录说明(3)脱机烧录

    大部分主流的烧录器厂商均支持GD32 MCU的烧录,如ELNEC、致远电子、贷铺科技、希尔特、迈斯威志、轩微、天津威磊、Segger、芯园电子、北极星电子等烧录器厂商。烧录方式分别有SWD和ISP
    的头像 发表于 08-08 17:44 1322次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入门教程】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 烧录说明(3)脱机烧录

    GD32 MCU 入门教程】二、GD32 MCU 烧录说明 (2)SWD/JTAG在线下载

    GD32系列MCU支持SWD和JTAG(部分型号不支持)接口进行下载调试,这些功能通过ARM CoreSight组件的标准配置和链状连接的TAP控制器来实现的。调试和跟踪功能集成在ARM
    的头像 发表于 08-08 17:34 781次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入门教程】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 烧录说明 (2)SWD/JTAG在线<b class='flag-5'>下载</b>

    GD32 MCU 入门教程】二、GD32 MCU 烧录说明(1)ISP 烧录

    ISP:In System Programing,在系统编程,通过MCU片内的引导程序进行Flash编程。 GD32片内有一个只读信息块,用于存放引导装载程序,引导
    的头像 发表于 08-08 16:20 1132次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入门教程】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 烧录说明(1)ISP 烧录

    GD32 MCU 入门教程】一、GD32 MCU 开发环境搭建(3)使用 Embedded Builder 开发 GD32

    GD32系列为通用型MCU,所以开发环境也可以使用通用型的IDE,目前使用较多的是KEIL、IAR、 GCC和Embedded Builder,客户可以根据个人喜好来选择相应的开发环境。
    的头像 发表于 08-08 16:03 1111次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入门教程】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 开发环境搭建(3)使用 Embedded Builder 开发 <b class='flag-5'>GD32</b>

    GD32 MCU 入门教程】一、GD32 MCU 开发环境搭建(2)使用 IAR 开发 GD32

    GD32系列为通用型MCU,所以开发环境也可以使用通用型的IDE,目前使用较多的是KEIL、IAR、 GCC和Embedded Builder,客户可以根据个人喜好来选择相应的开发环境。
    的头像 发表于 08-08 15:40 799次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入门教程】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 开发环境搭建(2)使用 IAR 开发 <b class='flag-5'>GD32</b>

    GD32 MCU 入门教程】一、GD32 MCU 开发环境搭建(1)使用Keil开发GD32

    GD32系列为通用型MCU,所以开发环境也可以使用通用型的IDE,目前使用较多的是KEIL、IAR、 GCC和Embedded Builder,客户可以根据个人喜好来选择相应的开发环境。
    的头像 发表于 08-08 15:01 1413次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入门教程】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 开发环境搭建(1)使用Keil开发<b class='flag-5'>GD32</b>

    GD32无法烧写的原因?

    GD32无法烧写
    发表于 07-26 07:09

    GD32 MCU ISP失败的原因

    玩过GD32的小伙伴们都知道,GD32 MCU支持ISP,即在系统编程,前面的常见问题也给大家讲过什么是ISP,什么是IAP?那有没有小伙伴遇到过ISP失败的情况,失败的原因是什么呢?
    的头像 发表于 02-28 09:23 1571次阅读
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> ISP失败的原因

    如何排查GD32 MCU复位是由哪个复位源导致的?

    上期为大家讲解了GD32 MCU复位包括电源复位和系统复位,其中系统复位还包括独立看门狗复位、内核软复位、窗口看门狗复位等,在一个GD32系统中,如果莫名其妙产生了MCU复位,如何排查
    的头像 发表于 02-03 09:46 1834次阅读
    如何排查<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>复位是由哪个复位源导致的?

    你了解GD32 MCU上下电要求吗

    你了解GD32 MCU的上下电要求吗?MCU的上下电对于系统的稳定运行非常重要。
    的头像 发表于 02-02 09:36 1096次阅读
    你了解<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>上下电要求吗