elephant00 发表于 2022-1-24 11:07

STM32F103C8T6运行一段时间后程序会偶尔会出现程序停止的现象

1 产品由于尺寸比较小,没有硬件复位,复位电路只有上拉10k电阻下拉0.1uf电容,使用过程中需要不停在STOP模式与工作状态切换,STOP模式电流为60uA,工作状态8mA~20mA之间;

2 STOP模式与正常模式切换,通过RTC闹钟唤醒,RTC时钟采用外部晶振;

3 在生产过程总生产了100pcs样品,出现了2pcs中间程序停止的现象,复测一台不能出现,另一台概率出现,在概率出现的样机上,使用外部电源供电,死机后电流为8~9mA;

4 针对重现的样机,初步怀疑是否由于外部晶振原因找出,程序调整为内部晶振后,仍然出现一次;

5 STOP模式唤醒代码如下:

void Low_power_consumption(u16 sec) { //while(1);//14.8mA Power_Ctrl(); //while(1);//4.4mA ADC_DeInit(ADC1); //while(1);//3.4mA RTC_ALARM_SET(sec); Sys_Enter_Stop(); //while(1);//13mA SystemInit(); //while(1);//3.3mA RTC_Init(); //while(1);//13.5mA Power_On(); //while(1);//3.3mA }

热爱童话世界 发表于 2022-8-30 19:21

感觉是受外界干扰导致的程序死机呢

风吻过你的不羁 发表于 2022-8-30 19:43

100出现2片,概率有点高啊

极客晨星 发表于 2022-8-30 20:05

是不是硬件的问题啊,硬件质量的事儿

晚晚皆安 发表于 2022-8-30 20:28

这代码估计是没啥问题的吧

占得人间第一春 发表于 2022-8-30 20:51

你查查电路,也可能是电路没焊接好导致的

偷吻月亮 发表于 2022-8-30 21:14

能不能采用printf的方式打印出log啊,看看程序死在哪儿

笨蛋无需搭理 发表于 2022-8-30 21:37

低功耗的情况下,最不好调试,仿真都跟踪不了

漫过岁月 发表于 2022-8-30 21:59

真有可能像你怀疑的那样

喜爱弄人 发表于 2022-8-30 22:21

调整为内置晶振,就出现一次是么?

情和欲 发表于 2022-8-30 22:43

可能最后那一次是偶然的吧,建议楼主还是多测测比较好

SantaBunny 发表于 2023-2-23 19:18

多半是进入STOP 时出现故障。所以建议楼主检查一下进入STOP前的中断和事件处理的是否全面

flycamelaaa 发表于 2024-3-31 20:11

检查程序中是否有数组访问越界的情况,这可能导致程序崩溃。

laocuo1142 发表于 2024-3-31 20:13

检查电源是否稳定,是否有电压波动或噪声干扰。

powerantone 发表于 2024-3-31 21:00

内存溢出

中国龙芯CDX 发表于 2024-3-31 21:57

是是不是选型有问题?程序无法快速启动呢?

stormwind123 发表于 2024-3-31 22:00

检查程序中是否有递归调用或局部变量过多导致堆栈溢出的情况。

probedog 发表于 2024-3-31 23:00

中断处理错误

周半梅 发表于 2024-7-1 08:19


共模电感的电感值可以用电桥来测量

Pulitzer 发表于 2024-7-1 09:22


单层板不具有固定孔
页: [1]
查看完整版本: STM32F103C8T6运行一段时间后程序会偶尔会出现程序停止的现象