GD32C103RBT6 标准库 FWDGT 驱动全解析(独立看门狗)

📅 2026/7/15 12:56:07 👁️ 阅读次数 📝 编程学习
GD32C103RBT6 标准库 FWDGT 驱动全解析(独立看门狗)

前言

在工业级、车规级、高可靠性嵌入式产品中,看门狗(Watchdog)是防止程序跑飞、死机、卡死的必备外设。

GD32C10x 内置的FWDGT(Free Watchdog,独立看门狗)拥有独立时钟源(IRC40K),即使主时钟失效,依然能正常工作,是系统稳定性的最后一道防线。

本文基于 GD32C10x 标准库源码gd32c10x_fwdgt.c,从概述、函数详解、实战例程、注意事项四个维度,带你彻底掌握独立看门狗的使用。


一、FWDGT 独立看门狗概述

1. 什么是 FWDGT?

FWDGT =Free Watchdog Timer独立看门狗,拥有完全独立的 40kHz 内部低速时钟(IRC40K),不受系统时钟、PLL 影响。

2. 核心特点

  • 时钟源:IRC40K(内部固定 40kHz 振荡器)
  • 12 位递减计数器(0~4095)
  • 可编程预分频器:4/8/16/32/64/128/256
  • 启动后无法关闭,只能复位
  • 支持写保护,防止误修改
  • 溢出后自动产生芯片复位
  • 适合高可靠性、抗干扰场景

3. 工作原理

  1. 计数器从配置的重装载值向下递减
  2. 程序正常运行时定时喂狗(重装计数器)
  3. 程序死机 → 无法喂狗 → 计数器减到 0 →芯片自动复位

二、驱动函数完整说明

gd