打印

GD32 MCU ISP失败的原因

[复制链接]
882|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
玩过GD32的小伙伴们都知道,GD32 MCU支持ISP,即在系统编程,前面的常见问题也给大家讲过什么是ISP,什么是IAP什么ISP?什么是IAP
那有没有小伙伴遇到过ISP失败的情况,失败的原因是什么呢?
我们就以GD32F30x系列为例,来看下用户手册:
通过将BOOT0拉高,BOOT1拉低,上电后,MCU则工作在ISP模式,此时可以通过ALL-IN-ONE软件(或用户自行开发的上位机软件)对MCU进行编程、操作选项字节、flash数据回读等操作,使用的是以下口:
如果用的是容量不超过512KGD32F303系列(HD产品),则使用USART0PA9 PA10)进行ISP交互,如果是超过512KGD32F303系列(XD产品),则除了USART0,还有USART1PA2 PA3),如果是F305/307系列(CL产品),则还增加了一个USB接口(DFU模式)。
当进入ISP后,实际上MCU是不知道自己该用哪个口进行ISP的,此时需要MCU和上位机(All-IN-ONE等)进行通讯握手,握手信号由上位机发出,也就是说哪个口先接收到上位机的握手信号,则该口被自动设置为ISP口,而其他通讯口则不会再处理ISP过程。
比如使用GD32F303ZKT6XD产品),当上位机通过PA10MCURX接收脚)向MCU发出握手信号后,则USART0被识别为ISP口,且此时USART0的波特率会根据握手信号进行自适应设置。
那么如果一个板子上,预设的是USART0PA9 PA10)作为ISP口的,但同时PA3接了另外的芯片,当MCU上电的时候,有芯片往PA3上发了一些脉冲,则MCU会将USART1PA2 PA3)设置为ISP口,此时,用户再使用USART0的话,则会失败。
根据上述原理,还有一种失败的可能性,就是刚上电时,ISP口上接收到了一些干扰信号,此时USART被设置为异常的波特率,那么在正式进行ISP时,也会失败。
以上就是GD32 MCU ISP失败的两个可能原因,小伙伴知道其他原因的也欢迎在评论区互动哦。
教程由GD32 MCU方案商聚沃科技原创发布,了解更多GD32 MCU教程,关注聚沃科技官网,GD32MCU技术交流群:859440462

使用特权

评论回复
沙发
tpgf| | 2024-8-10 11:23 | 只看该作者
失败的原因可能包括硬件连接问题、电源问题、配置错误以及软件和驱动程序问题等

使用特权

评论回复
板凳
WoodData| | 2024-8-10 22:20 | 只看该作者
boot引脚没配置对?

使用特权

评论回复
地板
xionghaoyun| | 2024-8-12 08:46 | 只看该作者
你不会是TX RX接反了吧

使用特权

评论回复
5
guanjiaer| | 2024-8-16 08:54 | 只看该作者
在线编程技术允许用户在微控制器焊接在电路板上的情况下对其进行编程,而不需要从系统中移除芯片

使用特权

评论回复
6
heimaojingzhang| | 2024-8-16 16:27 | 只看该作者
如果目标板或最小系统存在接触不良、短路或开路现象,可能导致ISP无法成功连接单片机

使用特权

评论回复
7
keaibukelian| | 2024-8-16 18:22 | 只看该作者
有些单片机的ISP下载通常需要冷启动,即在按下下载按钮后给单片机通电

使用特权

评论回复
8
paotangsan| | 2024-8-17 10:01 | 只看该作者
若目标板上外挂了其他电路(如RS485),可能会干扰串口通信,导致ISP下载失败

使用特权

评论回复
9
renzheshengui| | 2024-8-17 20:02 | 只看该作者
复位电路设计不当或复位不良也可能导致下载失败。

使用特权

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

本版积分规则

170

主题

190

帖子

6

粉丝