fix(vd960DBN): IWDG 无条件启用+喂狗 — 卡死兜底 (卡死定位闭环)
现场: printf 重入修复后乱码消失, 但 LUP 帧处理卡死(连 JSON: sensor_cb enter 都没打印), 且 iot_enable=0 模式 IWDG 未初始化 (iot_mqtt_poll 才喂狗, tcp_json 分支不喂) → 卡死永久冻结无兜底。 修复: - main 无条件 iot_watchdog_init() (IWDG 4s 超时) - 主循环 while 开头无条件 iot_watchdog_kick() (原只在 iot_mqtt_poll) - json_sensor_callback / iot_evt_sensor_cb 加 FAULT_MARKER(MK_EVT_CB_IN/OUT) 效果: 卡死 → 4s IWDG 复位 → 上电 FAULT_DIAG 打印 marker 定位卡死点
This commit is contained in:
@@ -52,6 +52,7 @@ void iot_mqtt_poll(void); // 主循环轮询 (状态机 + 心跳 +
|
||||
void iot_mqtt_handle_sock_int(uint8_t socketid, uint8_t intstat); // Socket 中断处理
|
||||
void iot_mqtt_publish_sensor(void); // 推送传感器数据到 MQTT
|
||||
void iot_evt_handle_ack(uint32_t msg_id, int code); // event_report 平台应答入口 (V1.04)
|
||||
void iot_watchdog_init(void); // 初始化硬件 IWDG (无条件, 主循环卡死兜底)
|
||||
void iot_watchdog_kick(void); // 喂硬件 IWDG (主循环调用)
|
||||
|
||||
#endif /* __IOT_MQTT_SRV_H__ */
|
||||
|
||||
Reference in New Issue
Block a user