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

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

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

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

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

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

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

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

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

则开始检查硬件问题。

首先!!!

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

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

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

相关推荐
江山如画,佳人北望39 分钟前
stm32-c8t6实现语音识别(LD3320)
stm32·单片机·嵌入式硬件
baowxz1 小时前
航芯MCU使用IAR+Jlink调试
单片机·嵌入式硬件
wangxinwei20001 小时前
stm32_LAN8720驱动
stm32·单片机·嵌入式硬件
大叔带刺1 小时前
AUTOSAR实战教程--DoIP_01_配置项解释
单片机·嵌入式硬件
小胖同学~1 小时前
Linux--vsFTP配置篇
stm32·单片机·嵌入式硬件
小智学长 | 嵌入式2 小时前
SOC-ESP32S3部分:36-适配自己的板卡
单片机·物联网·esp32
Neil今天也要学习5 小时前
永磁同步电机参数辨识算法--IPMSM拓展卡尔曼滤波全参数辨识
单片机·嵌入式硬件·算法
知识噬元兽8 小时前
【工具使用】STM32CubeMX-FreeRTOS操作系统-信号标志、互斥锁、信号量篇
stm32·单片机·嵌入式硬件
Flag- L9 小时前
STM32标准库-TIM定时器
stm32·单片机·嵌入式硬件
2301_7756023810 小时前
STM32什么是寄存器
stm32·单片机·嵌入式硬件