芯城品牌采购网 > 品牌资讯 > 技术方案 > 当MCU死机了,先把硬件抓过来~
芯城品牌采购网
4911
做嵌入式软件的朋友们也不要太高估了自己,虽然大家可以把硬件秀起来,但是你拯救不了“无药可救”的硬件。不要一头扎到代码的调试中,而是更多的分析现场和一些可能性的问题,先排查一些更加常见且易查的硬件问题,此时此刻示波器得秀起来~
1
电源问题
对于电源问题引起的死机,在这么多年软件调试过程了至少有碰到过10次左右,特别是一些经验不是特别丰富的软件工程师们在开发的过程中很少去质疑硬件问题,所以一言不合就从嵌入式软件开始排查,同时也有许多硬件伙计觉得软件可以优化非常多的硬件问题。
所以嵌入式软件没有一定经验在调试硬件问题会比较难受,那么对于电源这块能量的核心,主要是电压、功率和稳定性等。大部分芯片都会有一个稳定运行的电压范围,过高或者过低都有可能导致运行异常,注意是可能,不是一定,甚至同一个型号,不同批次的芯片都有所差异~
所以功率不够,电压过低会导致芯片内外供电不够,使得相应模块、外设运行异常,最终程序死机、跑飞是经常发生的。特别是整个系统的功率需求并不是特别稳定,且电源的设计并没有太多的余量,当出现比如动作继电器等等功耗较大的动作时,其电源就有可能出现不稳定状态,最终影响到芯片运行。
所以bug菌目前亲自开发的项目,在项目的设计评审初期,会要硬件多留一个MCU的AD采样电路用来实时采集供电电压等,软件内部做一些快速的电压保护或者故障侦测,以检测出大部分电源异常问题。
2
复位电路干扰
3
晶振失效或受干扰
4
最后几小点
免责声明:
文章内容转自互联网,不代表本站赞同其观点;
如涉及内容、图片、版权等问题,请联系2644303206@qq.com我们将在第一时间删除内容!