看门狗复位后变量清空是为啥?L051 芯片
触发 IWDG 后变量全没了,以为 RAM 能保持,结果像全初始化了。用 HAL_GetREVID 试试确认是不是复位导致的。 会不会你变量在 RAM2 区域,被初始化清空了? 看门狗复位其实和上电复位差不多,都会清。 非初始化变量用 .noinit 区。 你变量放全局了吗?局部的不保存。 L0 的 RAM 小,建议保存到备份寄存器。 用 RTC 备份区保存关键值吧。 看门狗复位后 Flash 不会变,考虑存 NV 区。 可以加个标志位判断是不是 WWDG/IWDG 引起的。 G4 的定时器能三相互补输出,试试那个。
页:
[1]