GD32F30x系列内部有独立看门狗和窗口看门狗2种:
独立看门狗:
有独立的时钟源(IRC40K),不受主时钟的影响,如下图所示:

手册中提供了独立看门狗的最大最小超时时间,可以根据这个选择看门狗的配置:
窗口看门狗:
挂载在APB1下,最大时钟频率为60MHz,如下图所示:
窗口看门狗超时时间计算如下所示:
1、创建wdgt.c和wdgt.h文件分别放入对应的文件夹中,如下图所示:
将创建好的wdgt.c文件和gd32f30x_fwdgt.c、gd32f30x_wwgt.c文件添加到keil项目工程中,如下图所示:
2、完成独立看门狗和窗口看门狗的初始化,以及喂狗函数。

//wdgt.c文件
#include "wdgt.h"/*看门狗的初始化独立看门狗--默认设置1S超时窗口看门狗--默认设置15ms超时
*/
void gd32_wdgt_init(EWdgType type)
{if(type == EWdgType_fwdg)//独立看门狗{/* enable IRC40K */rcu_osci_on(RCU_IRC40K);   /* wait till IRC40K is ready */while(SUCCESS != rcu_osci_stab_wait(RCU_IRC40K)){}/* 40K / 16 = 2.5 KHz      t = 1/2.5 *2500 = 1s */fwdgt_write_enable();fwdgt_config(2500, FWDGT_PSC_DIV16);//1S超时fwdgt_write_disable();fwdgt_enable();}else if(type == EWdgType_wwdg)//窗口看门狗{wwdgt_deinit();rcu_periph_clock_enable(RCU_WWDGT);/* 60M / 4096 / 4 = 3.662109375 KHz  t = 1/3.6621 *48 = 13ms    需在开启后的4-17ms左右喂狗,否则超时*/wwdgt_config(0x7F, 0x6F, WWDGT_CFG_PSC_DIV4);wwdgt_counter_update(0x7F);wwdgt_enable();}
}/*看门狗喂狗
*/
void gd32_wdgt_feed_dog(EWdgType type)
{if(type == EWdgType_fwdg)//独立看门狗{fwdgt_write_enable();fwdgt_counter_reload();fwdgt_write_disable();}else if(type == EWdgType_wwdg)//窗口看门狗{wwdgt_counter_update(0x7F);}
}//wdgt.h文件
#ifndef __WDGT_H__
#define __WDGT_H__#include "gd32f30x.h"typedef enum
{EWdgType_fwdg,EWdgType_wwdg,
}EWdgType;void gd32_wdgt_init(EWdgType type);
void gd32_wdgt_feed_dog(EWdgType type);#endif

3、在main.c文件中main函数调用看门狗的初始化,独立看门狗每隔900ms喂狗一次(1S 超时),窗口看门狗没10ms喂狗1次(15ms超时),如下图所示:
编译下载程序到硬件板中。
4、下载运行程序,可以看到系统正常运行,没有因为看门狗导致复位,systick的值正常记录,如下图所示:
将独立看门狗的喂狗时间调整至1S喂狗一次,重新下载程序运行,可以看到程序运行后会一直复位,systick记录在不断的恢复为0重新记录,说明独立看门狗喂狗超时了,导致系统复位。
将窗口看门狗的喂狗时间调整至20ms喂狗一次,重新下载程序运行,可以看到程序运行后会一直复位,systick记录在不断的恢复为0重新记录,说明窗口看门狗喂狗超时了,导致系统复位。
在及时喂狗的情况下,程序可以正常运行,超时未喂狗时会 导致系统复位,说明看门狗正常工作,配置成功。
注:这里只是根据当前的systick记录是否正常来判断程序是否复位其实并不完全正确,正常还是需要查找系统的复位源来验证其正确性,在GD32F30x手册中也提供了复位原因的介绍,如下图所示:

可以通过软件查找复位源来进一步确定复位原因。

GD32F30x系列---看门狗基础配置相关推荐

  1. 【转载】外设使用Tips之MPC574xP系列汽车级MCU的SWT看门狗定时器配置与使用

    外设使用Tips之MPC574xP系列汽车级MCU的SWT看门狗定时器配置与使用 原创 2017-09-13 胡恩伟 汽车电子expert成长之路 内容提要 引言 1. SWT的功能概述 2. SWT ...

  2. stm32看门狗_STM32单片机:独立看门狗、窗口看门狗的配置

    SATM32单片机的看门狗有独立看门狗和窗口看门狗之分,这两者的工作原理却完全不同,今天来看一下他们的具体区别和配置方法.▍STM32独立看门狗由专门的低速时钟(LSI)驱动,即便是主时钟发生故障它仍 ...

  3. 独立看门狗基础与应用

    一.IWDG简介 1.1什么是独立看门狗. 相当于一个监控程序是否跑飞,或者死机,在正常情况下程序会定时喂狗,如果超过一定的时间没有喂狗,会触发复位.独立看门狗 (IWDG) 由其专用低速时钟 (LS ...

  4. STM32cubemx——HAL库学习笔记 六、IWDG独立看门狗的配置

    一.配置STM32cubeMX工程 在配置好时钟和调试设备以后进行一下操作即可以使用 看门狗的溢出时间公式为 Tout= 分频系数/ 时钟 * 重装载值 二.IWDG的技术讲解 可以到看,看门狗相对于 ...

  5. STM32中独立看门狗的配置

    我自己使用的是独立看门狗由内部专门的 32Khz 低速时钟(LSI)驱动.主要自己查手册看LSI是多少就是多少. LL库中的配置:void MX_IWDG_Init(void) { /* Enable ...

  6. stm32 独立看门狗时钟配置

    独立看门狗的时钟源为40k,分频因子最大为256 //初始化独立看门狗  5秒钟 //prer:分频数:0~7(只有低3位有效!) //分频因子=4*2^prer.但最大值只能是256! //rlr: ...

  7. STM32独立看门狗的配置

    #include "iwdg.h" void IWDG_Init(u8 prer ,u16 rlr)//两个参数prer是预分频系数 rlr是重装栽值 {     IWDG_Wri ...

  8. STC15W系列单片机休眠唤醒与看门狗配置问题

    STC15W系列单片机休眠唤醒与看门狗配置问题 关于STC单片机之定时器唤醒与看门狗寄存器配置 硬件看门狗 硬件看门狗配置 主程序参考配置 本次是记录自己在STC单片机低功耗模式下使用过程中遇到的一些 ...

  9. 对于MCU看门狗IIWDG WWDG喂狗时间的配置参考

    对于MCU看门狗IIWDG WWDG喂狗时间的配置参考可以参考MCU的datasheet: 在每个MCU的datasheet中都有这样的表格: 6.3.25 Timer characteristics ...

最新文章

  1. 《实施Cisco统一通信管理器(CIPT1)》——2.2 CUCM:单站点部署模型
  2. net 模式中虚拟机连不上本机oracle_高并发与负载均衡(三种负载模式)
  3. windows无法访问指定设备路径或文件_完全免费的文件数据恢复工具:Microsoft Windows File Recovery...
  4. python大数据零基础_零基础学习大数据人工智能,学习路线篇!
  5. Haproxy安装及配置(转)
  6. 容器编排技术 -- Kubernetes kubectl create secret generic 命令详解
  7. html显示日志_如何实现类似“jenkins”的滚动日志功能?
  8. 【angularjs】【学习心得】路由继续研究篇
  9. Cookie、LocalStorage 与 SessionStorage的区别
  10. 修改Windows系统管理员Administrator的名称
  11. WPS Excel+windows批处理批量重排序文件夹
  12. 南京信息工程大学计算机科学与技术评级,晋升ESI排名全球前1‰,南京信息工程大学这个学科不简单!...
  13. linux中文件夹的作用
  14. vivado下载错误 core_34 is an invalid handle
  15. 软件需求工程 高校教学平台 需求变更控制会规程
  16. 摘抄-对最好程序员的感想
  17. TRC丨艾美捷TRC a,a-二甲基-4-说明书
  18. NPI将新产品的设计方案导入到工厂,指导工厂高效率地生产出高品质的产品
  19. 基于汉宁窗的FIR高通滤波器设计
  20. linux常用命令-查询手册

热门文章

  1. 计算机工程学院文艺例会,计算机工程系团总支学生会召开第二次全体例会
  2. 东南亚(Lazada shoppe)自养号测评如何解决收货地址及ip问题详解
  3. SLAM中相机位姿求解(李群李代数)
  4. Gradle 配置代理
  5. PTA_2021年团体程序设计天梯赛_总决赛_L2-4 哲哲打游戏 (25 分)_搞心态_简单模拟
  6. 【Rust日报】2020-11-09 构建可测试性的 Rust 工程
  7. 代码整洁之道读书笔记(Ch4-Ch7)
  8. 【Python绘图】学习绘图第一步,先要知道哪些操作是常用的
  9. 10.8 UiPath 数据筛选Filter Data Table的介绍和使用(Excel数据写入另一个Excel中)
  10. 牛客网机器学习刷题错题集合1