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

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

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

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

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

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

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

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

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

则开始检查硬件问题。

首先!!!

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

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

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

相关推荐
渣渣灰95872 小时前
Keil创建自定义的STM32标准库工程
stm32·单片机·嵌入式硬件
nanxl14 小时前
07_Z-Stack多节点组网及终端消息上报
c语言·单片机·cc2530
星仔_X4 小时前
STM32 HAL库之USART示例代码
arm开发·stm32·单片机·嵌入式硬件
soulermax8 小时前
华为数字芯片机考2025合集2已校正
嵌入式硬件·华为·fpga开发·系统架构·硬件架构
Ronin-Lotus10 小时前
嵌入式硬件篇---单片机周期
单片机·嵌入式硬件·时钟周期·机器周期
云山工作室14 小时前
基于单片机的病房呼叫系统设计
单片机·嵌入式硬件·毕业设计·毕设
qq_4017004117 小时前
单片机基础知识-STM32
单片机·嵌入式硬件
@迷糊17 小时前
为什么反激采用峰值电流控制模式而非电压模式
单片机·嵌入式硬件
zd84510150018 小时前
STM32 HAL DHT11驱动程序
stm32·单片机·嵌入式硬件
lzb75919 小时前
蓝桥杯单片机刷题——ADC测量电位器的电压
单片机·蓝桥杯