打印
[研电赛技术支持]

MCU为什么上电不启动?

[复制链接]
1110|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tpgf|  楼主 | 2024-2-6 11:09 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
都遇到过这样的问题吧,自信满满的把程序下载到板子上,结果发现MCU居然没启动。

        出现这个问题有很多原因,总结为以下五点:

        第一,boot引脚电平不对,例如在GD32的MCU上,boot引脚决定了MCU的启动方式。通常boot0引脚下拉时是flash启动,如果boot电平不对就不会执行我们下载的程序了。



        第二,NRST拉高了吗?NRST是MCU的复位引脚,如果复位引脚没有拉高,程序也不会启动。复位引脚一般和电源以及连接电路有关,电源上升到POR-2ms后NRST一般会拉高,如果没有拉高那还要进一步检查电源和电路。



        第三,VDD和VDDA电压满足工作范围了吗?平时大家一般都关注VDD电压,但VDDA电压也很关键。我们需要确定VDD和VDDA都达到芯片的工作电压范围,才能让芯片正常运行。



        第四,晶振和程序里的配置匹配吗?如果MCU超频了,那么也会上电后跑飞导致不启动的现象,当我们的晶振大小大于程序配置不一致时,就会出现我们以为主频正常,但芯片实际已经超频的离谱了。

        第五,固件和实际芯片型号或类型不匹配。以我们的老朋友GD32F303为例,我们打开固件库会看到GD32F30x固件库实际对应了GD32F303、F305、F307不同芯片类型。通过宏定义选择,它们在时钟上就存在一定区别,固件配置错的话程序可能就是在时钟配置里。

        如果还没有找到问题,那么就大胆的进入debug模式,千万不要对自己的程序太自信,真想甚至可能就是打错一个字母 。
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/qq_45796666/article/details/135093818

使用特权

评论回复
沙发
jcky001| | 2024-2-6 17:19 | 只看该作者
用万用表、示波器

使用特权

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

本版积分规则

2028

主题

15903

帖子

14

粉丝