Bblythe 发表于 2025-6-12 07:21

看门狗复位后变量清空是为啥?L051 芯片

触发 IWDG 后变量全没了,以为 RAM 能保持,结果像全初始化了。

Clyde011 发表于 2025-6-12 07:24

用 HAL_GetREVID 试试确认是不是复位导致的。

公羊子丹 发表于 2025-6-12 07:25

会不会你变量在 RAM2 区域,被初始化清空了?

周半梅 发表于 2025-6-12 07:27

看门狗复位其实和上电复位差不多,都会清。

帛灿灿 发表于 2025-6-12 07:28

非初始化变量用 .noinit 区。

童雨竹 发表于 2025-6-12 07:29

你变量放全局了吗?局部的不保存。

万图 发表于 2025-6-12 07:30

L0 的 RAM 小,建议保存到备份寄存器。

Wordsworth 发表于 2025-6-12 07:31

用 RTC 备份区保存关键值吧。

Bblythe 发表于 2025-6-12 07:32

看门狗复位后 Flash 不会变,考虑存 NV 区。

Pulitzer 发表于 2025-6-12 07:32

可以加个标志位判断是不是 WWDG/IWDG 引起的。

Uriah 发表于 2025-6-12 07:33

G4 的定时器能三相互补输出,试试那个。
页: [1]
查看完整版本: 看门狗复位后变量清空是为啥?L051 芯片