单片机死机跑飞的原因

embedded/2025/3/1 16:12:37/

单片机死机跑飞的原因

  • 硬件问题
    • 一.电源问题
    • 二.时钟异常
    • 三.复位电路故障
    • 四.电磁干扰(EMI)
    • 五.外设负载过重
    • 六.温度影响
  • 软件原因
    • 一.内存管理问题
    • 二.中断处理错误
    • 三.看门狗配置不当
    • 四.多任务冲突

记录一下导致单片机跑飞可能出现的原因。

硬件问题

一.电源问题

  • 电压不稳定:电压过低或过高导致异常复位或损坏。
  • 噪声干扰:电源纹波过大(电机,继电器干扰)影响内部逻辑。
  • 上电/掉电瞬间:电源爬升/跌落过快,未满足时序要求。

二.时钟异常

  • 晶振失效:晶振停振,频偏(电容不匹配或质量问题)。
  • 外部噪声干扰:高频噪声耦合到时钟信号线,导致时序错乱。

三.复位电路故障

  • 复位信号不稳:复位引脚受干扰或阻容参数不合理,引发误复位。
  • 复位时间不足:电容充电时间过短,导致初始化未完成。

四.电磁干扰(EMI)

  • 强干扰环境:如电机、射频设备导致数据总线/程序计数器被篡改。
  • PCB设计缺陷:未合理布局地线、滤波电容,信号完整性差。

五.外设负载过重

  • IO口过载:驱动电流超限(如直接驱动大功率器件),导致芯片发热或逻辑异常。
  • 总线冲突:多设备竞争总线(如I2C未正确处理仲裁)。

六.温度影响

  • 超出工作范围:高温导致漏电流增加,低温引发晶振频偏。

软件原因

一.内存管理问题

  • 堆栈溢出:递归过深、中断嵌套过多导致堆栈覆盖代码区。
  • 内存泄漏:动态分配未释放,耗尽RAM资源。
  • 越界访问:数组/指针操作越界,篡改关键数据或代码。

二.中断处理错误

  • 未清除中断标志:导致重复进入中断服务程序(ISR)。
  • 中断优先级冲突:高优先级中断阻塞关键任务(如喂狗)
  • ISR执行过长:未及时退出中断,影响主程序运行。

三.看门狗配置不当

  • 没有及时进行喂狗,导致一直或不正常复位。

四.多任务冲突

  • 资源竞争:未使用互斥锁保护共享资源(如全局变量),引发数据错乱。

  • 死锁:多个任务互相等待资源,陷入僵局。


http://www.ppmy.cn/embedded/169090.html

相关文章

属性的设置

笔记 class Student:def __init__(self, name, gender):self.name nameself.__gender gender # self.__gender 是私有的实例属性# 使用property 修改方法,将方法转成属性使用propertydef gender(self):return self.__gender# 将我们的gender这个属性设置为可写属…

Linux学习笔记1

root用户 进入方式 su - root 可以使用exit退回到上一个用户,或者ctrl d 可以使用sudo命令为普通用户授权 但需要为普通用户配置sudo认证 执行visudo命令会自动打开/etc/sudoers 在文件的最后添加:用户名 ALL(ALL) NOPASSWD: ALL 最后wq保存 用户和用户组 Linux可以 配置多个用…

微信小程序换行符真机不生效问题

标签必须使用text包裹 <text>你好你好{{"\n"}}你好你好</text>上面代码在模拟器正常&#xff0c;在真机上面原样显示/n文本了&#xff0c;没实现换行效果 <text>你好你好{{"\n"}}你好你好</text>改成这种格式的话&#xff0c;模…

rust web框架actix和axum比较

在选择 Actix Web 和 Axum 时&#xff0c;可以根据项目需求、开发习惯以及对框架生态的要求来判断。以下是它们的比较和适用场景分析&#xff1a; 1. 核心特点对比 特性 Actix Web Axum 性能 极高性能&#xff0c;使用 Actor 模型优化异步任务。 性能也很好&#xff0c;基…

FFT算法详解与STM32实战应用:从原理到代码实现

摘要&#xff1a;快速傅里叶变换&#xff08;FFT&#xff09;是数字信号处理的核心算法之一。本文深入剖析FFT算法原理&#xff0c;并手把手教你在STM32平台上实现256点FFT运算&#xff0c;附带完整工程代码。 1. 为什么要用FFT&#xff1f; 在工业控制、音频处理、通信系统等…

leetcode-442.数组中重复的数据

leetcode-442.数组中重复的数据 文章目录 leetcode-442.数组中重复的数据1.题目描述&#xff1a;数组中重复的数据2.第一次代码提交&#xff1a;(不符合仅使用常量额外空间)3.最终代码提交&#xff1a;只使用常数额外空间、时间复杂度为 O(n) 的做法&#xff0c;即“标记法” 1…

【MySQL】索引(中)

欢迎拜访&#xff1a;雾里看山-CSDN博客 本篇主题&#xff1a;【MySQL】索引(中) 发布时间&#xff1a;2025.2.28 隶属专栏&#xff1a;MySQL 目录 一个现象现象展现现象解释为何IO交互要是 Page 构建B索引理解单个page理解多个Page页目录单页目录多页情况 复盘一下 为什么是B树…

【Android】Android Studio 中文乱码问题解决方案

问题现象 在 Java 文件编译或运行时&#xff0c;IDE 控制台或代码编辑区出现类似以下乱码提示&#xff1a; E:\...\FileHelper.java:92: &#xfffd;&#xfffd;&#xfffd;&#xfffd;: &#xfffd;Ҳ&#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;&…