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

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

3天内不再提示

GD32 MCU ISP失败的原因

聚沃科技 2024-02-28 09:23 次阅读

玩过GD32的小伙伴们都知道,GD32 MCU支持ISP,即在系统编程,前面的常见问题也给大家讲过什么是ISP,什么是IAP?

那有没有小伙伴遇到过ISP失败的情况,失败的原因是什么呢?

我们就以GD32F30x系列为例,来看下用户手册:

wKgaomXeitGANssxAABqLnZAD7A708.png

通过将BOOT0拉高,BOOT1拉低,上电后,MCU则工作在ISP模式,此时可以通过ALL-IN-ONE软件(或用户自行开发的上位机软件)对MCU进行编程、操作选项字节、flash数据回读等操作,使用的是以下口:

wKgZomXeitaAHXqOAACXUa6s3N8990.png

如果用的是容量不超过512K的GD32F303系列(HD产品),则使用USART0(PA9 PA10)进行ISP交互,如果是超过512K的GD32F303系列(XD产品),则除了USART0,还有USART1(PA2 PA3),如果是F305/307系列(CL产品),则还增加了一个USB接口(DFU模式)。

当进入ISP后,实际上MCU是不知道自己该用哪个口进行ISP的,此时需要MCU和上位机(All-IN-ONE等)进行通讯握手,握手信号由上位机发出,也就是说哪个口先接收到上位机的握手信号,则该口被自动设置为ISP口,而其他通讯口则不会再处理ISP过程。

比如使用GD32F303ZKT6(XD产品),当上位机通过PA10(MCU的RX接收脚)向MCU发出握手信号后,则USART0被识别为ISP口,且此时USART0的波特率会根据握手信号进行自适应设置。

那么如果一个板子上,预设的是USART0(PA9 PA10)作为ISP口的,但同时PA3接了另外的芯片,当MCU上电的时候,有芯片往PA3上发了一些脉冲,则MCU会将USART1(PA2 PA3)设置为ISP口,此时,用户再使用USART0的话,则会失败。

根据上述原理,还有一种失败的可能性,就是刚上电时,ISP口上接收到了一些干扰信号,此时USART被设置为异常的波特率,那么在正式进行ISP时,也会失败。

以上就是GD32 MCU ISP失败的两个可能原因,小伙伴知道其他原因的也欢迎在评论区互动哦。

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

    关注

    6001

    文章

    43973

    浏览量

    620836
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16016

    浏览量

    343620
  • ISP
    ISP
    +关注

    关注

    6

    文章

    457

    浏览量

    50844
  • GD32
    +关注

    关注

    7

    文章

    333

    浏览量

    23740
收藏 人收藏

    评论

    相关推荐

    使用MCU GD32替代STM32的体会

    GD32作为国产MCU里的佼佼者,产品线也比较丰富,是替代STM32的一个很好的选择。前段时间有个项目用到GD32的单片机,今天来说说使用的一些体会。
    发表于 07-29 08:53 8436次阅读

    GD32 MCU ISP失败原因#单片机 #嵌入式开发 #ISPIAP功能 #GD32

    单片机mcu
    聚沃科技
    发布于 :2024年02月28日 09:34:01

    GD32 MCU移植

    gd32是一款国产单片机。该芯片在很多方面和STM32有异曲同工之处。资料不是很多! GD32在外设方面、和STM32没有多大区别。 只是需要注意资源的引脚分配。虽然和STM32使用方式一样、但是也存在GD自带的一些设计理念。
    发表于 03-23 13:40

    GD32MCU介绍

    吧,但是基本上有99%,有部分寄存器比特位存在区别。另外兆芯的手册写的实在是不够精确,很多时候出现一种情况就是,我命名特么的用的是GD32MCU,写个驱动还要参考ST的手册?!真是见了鬼了。比如USB的这个寄存器,兆芯的描述简直了。很多时候吧,真的想支持国产,奈何国产芯
    发表于 11-01 06:03

    GD32单片机用ISP烧写工具烧写程序失败怎么办呢

    GD32单片机用ISP烧写工具烧写程序失败怎么办呢?
    发表于 01-18 06:04

    GD32 MCU学习这本书的理由

    首先,学习GD32 MCU原理固件库开发指南可以让我了解这个芯片的内部结构和工作原理,从而深入理解如何在嵌入式系统中使用它。其次,固件库是嵌入式系统中必不可少的软件组件之一,它提供了基本的底层
    发表于 03-10 20:06

    GD32 MCU原理及固件库开发指南》+读后感

    工作很多年了,之前公司基本上用的MCU都是STM32,现在公司要使用国产的MCU做项目,并能把之前的项目也移植过来。经过比较了几家,最终选择了GD32。因为GD32和STM32使用起来
    发表于 06-06 21:52

    GD32芯片MCU ISP下载工具

    GD32芯片MCU ISP 下载工具
    发表于 10-08 14:53 15次下载

    推出采用GD32 RISC-V的MCU

    推出采用GD32 RISC-V的MCU ppt分享
    发表于 07-14 17:15 0次下载

    兆易创新GD32 MCU选型手册,适用于GD32全系列MCU

    兆易创新GD32MCU选型手册,适用于GD32全系列MCUGD32MCU选型手册,适用于GD32全系列MCU
    发表于 10-19 17:26 44次下载

    你了解GD32 MCU的命名规则吗

    下面为大家介绍GD32 MCU的通用命名规则,以GD32F303ZGT6为例,其中,GD32代表GD32
    的头像 发表于 01-13 09:38 1534次阅读
    你了解<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>的命名规则吗

    GD32 MCU的选项字节是什么?

    GD32 MCU的选项字节是什么,有什么功能呢?选项字节被误篡改如何回复?
    的头像 发表于 01-17 09:42 471次阅读
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>的选项字节是什么?

    GD32 串口接受异常的几个原因

    前面我们介绍过GD32 485发送时出现异常的最常见原因,有小伙伴反馈想要知道GD32 串口接受异常的可能原因,今天我们就来安排。
    的头像 发表于 01-18 09:57 1731次阅读
    <b class='flag-5'>GD32</b> 串口接受异常的几个<b class='flag-5'>原因</b>

    不同型号的GD32 MCU如何区分?

    大家是否碰到过以下应用场景:同一套软件代码希望跑在不同型号的GD32 MCU中,但有些地方需要根据MCU型号进行调整?或者上位机或其他MCUGD3
    的头像 发表于 01-27 09:32 344次阅读
    不同型号的<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>如何区分?

    你了解GD32 MCU上下电要求吗

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