打印

导致MCU出现功能严重异常的几个原因分析

[复制链接]
1512|24
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Orchids|  楼主 | 2017-12-22 16:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
导致MCU出现功能严重异常的几个原因分析

我们在从事MCU应用开发过程中,难免会碰到MCU芯片异常的问题。比如异常复位,表现为复位脚有电平跳变或者干脆处于复位电平;在做代码调试跟踪时,发现代码往往进不到用户main()程序;或者时不时感觉芯片死掉了,功能完全不可控等。

针对类似严重异常情况的原因我在这里大致总结下,与大家分享。

1、时钟问题。一般表现在时钟配置异常,比方配置超出芯片主频工作范围。【对于STM32系列MCU,如果使用STM32CUBEMX图形化工具做配置,基本可以回避这个问题】

2、电源问题。比方电源质量差,纹波过大,尤其开关电源供电时;或者供电芯片质量差,输出不稳定;或者系统供电能力不足而引起电源波动等。

3、BOOT脚配置问题。对于ARM芯片往往都有些BOOT配置脚。经常遇到有人因为BOOT脚的焊接或接触不良导致各类奇怪问题。这种情况多表现在芯片功能时好时坏,或者部分芯片正常,部分芯片异常。

4、启动文件问题。经常因为选错了启动文件,导致程序无**常运行,或者说调试时好好的,脱机运行就出鬼。这点在做不同系列芯片间移植时最容易碰到。

5、中断请求位清除问题。由于中断请求位没有及时清除导致中断没完没了的重复进入,感觉系统死机一般。

6、堆或栈的越界溢出。这个也会导致芯片无**常工作,调试时往往可能会有硬错提示。

7、VCAP脚问题。有些MCU芯片有VCAP脚,该类脚往往需要接上适当的电容,如果无视了它的话,也可能导致整个芯片的功能异常。

上面这几个原因比较容易导致MCU出现功能严重异常,也不太容易简单地通过查看MCU技术手册直接获得答案,分享出来算作一些提醒。



相关帖子

沙发
baimiaocun2015| | 2017-12-23 12:00 | 只看该作者
这7个问题的可以说是非常常见的,,特别是那个堆栈越界的问题的要注意

使用特权

评论回复
板凳
zhangbo1985| | 2017-12-23 21:43 | 只看该作者
BOOT脚配置问题。对于ARM芯片往往都有些BOOT配置脚。经常遇到有人因为BOOT脚的焊接或接触不良导致各类奇怪问题。
这个纯粹会硬件上的问题的,要多注意的

使用特权

评论回复
地板
zhangbo1985| | 2017-12-23 21:44 | 只看该作者
再个,软件上的问题的话,一般都会大面积的,很容易定位的

使用特权

评论回复
5
kkzz| | 2017-12-24 21:22 | 只看该作者
MCU主要的还是死机。

使用特权

评论回复
6
hudi008| | 2017-12-24 21:22 | 只看该作者
这个是STM32的分析。

使用特权

评论回复
7
lzmm| | 2017-12-24 21:23 | 只看该作者
启动文件在哪里配置的

使用特权

评论回复
8
minzisc| | 2017-12-24 21:24 | 只看该作者
异常复位是指的进入中断吗?

使用特权

评论回复
9
selongli| | 2017-12-24 21:24 | 只看该作者
堆或栈的越界溢出是什么造成的?

使用特权

评论回复
10
xiaoyaodz| | 2017-12-24 21:25 | 只看该作者
主要是硬件能够满足要求。

使用特权

评论回复
11
febgxu| | 2017-12-24 21:25 | 只看该作者
代码调试有问题

使用特权

评论回复
12
sdlls| | 2017-12-24 21:26 | 只看该作者

使用特权

评论回复
13
pixhw| | 2017-12-24 21:26 | 只看该作者
代码往往进不到用户main()程序还真没有碰上。

使用特权

评论回复
14
updownq| | 2017-12-24 21:28 | 只看该作者
能够讲解一下bootloader的分析就行了。

使用特权

评论回复
15
kkzz| | 2017-12-24 21:29 | 只看该作者
芯片死机除了电源还有什么功能。

使用特权

评论回复
16
hudi008| | 2017-12-24 21:29 | 只看该作者
有没有关于MSP430的。

使用特权

评论回复
17
lzmm| | 2017-12-24 21:29 | 只看该作者
正常不就是bootloader启动吗?

使用特权

评论回复
18
minzisc| | 2017-12-24 21:29 | 只看该作者
正常的问题就是死机的问题。

使用特权

评论回复
19
selongli| | 2017-12-24 21:29 | 只看该作者
因为编译器的不同吗?

使用特权

评论回复
20
xiaoyaodz| | 2017-12-24 21:30 | 只看该作者
很多时候都是硬件电路存在问题,导致系统故障。

使用特权

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

本版积分规则

697

主题

993

帖子

4

粉丝