stm32疑难杂症之电压不够程序跑飞

在开发阶段,如果出现程序不断重启的情况。

首先先检查是不是代码问题。

1.数组越界。定义的数组只有50个单元,但是程序运行的过程中,却给他赋给50+个单元。

2.中断耗时太长,刚出中断又进去了。这时的现象是程序一直在中断中执行,回不到主函数。 一般出现在中断嵌套中。

3.中断或主函数中有死循环,导致是否没有及时喂看门狗。

4.堆栈溢出。可以用static来避免

5.程序中使用malloc()函数没有释放。

如果没有发现具体的问题。

则开始检查硬件问题。

首先!!!

检查stm32的供电电压是否稳定,是否在正常工作电压范围内。

电源文波大小一定要小,一般Ldo供电在3.3v在几个ma ,在stm32的vdda 和vssa引脚一定要接磁珠,各个电源硬件要接滤波电容。

保证Vcc大于1.8V。当电压低至0.8V时,程序仍有可能执行。这时的现象是PC指针乱飞,有复位,死机,停在中断,时钟频率发生变化等现象。

相关推荐
于小猿Sup21 小时前
VMware在Ubuntu22.04驱动Livox Mid360s
linux·c++·嵌入式硬件·自动驾驶
chao1898441 天前
STM32 HAL库驱动AT24C02 EEPROM例程
stm32·单片机·嵌入式硬件
不会武功的火柴1 天前
SystemVerilog语法(8)-有限状态机(FSM)
嵌入式硬件·fpga开发·自动化·ic验证·rtl·uvm方法学
猫猫的小茶馆1 天前
【Python】函数与模块化编程
linux·开发语言·arm开发·驱动开发·python·stm32
feifeigo1231 天前
STM32矩阵键盘驱动(库函数版)实现
stm32·矩阵·计算机外设
嵌入式小站1 天前
STM32 零基础可移植教程 05:按键消抖,为什么按一次会触发好几次
chrome·stm32·嵌入式硬件
czhaii1 天前
跟我动手学FX系列PLC GX2环境
嵌入式硬件
拾知_H1 天前
STM32/Delay延时函数编程思路
stm32·单片机·时钟·延时
2zcode1 天前
基于STM32的智能扫地机器人设计与实现
stm32·嵌入式硬件·机器人
jllllyuz1 天前
单相并网逆变器控制代码实现(STM32版)
stm32·单片机·嵌入式硬件