Wwdgt.c 4.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. /*********************************************************************************************************
  2. * 模块名称:Wwdgt.c
  3. * 摘 要:Wwdgt模块
  4. * 当前版本:1.0.0
  5. * 作 者:Leyutek(COPYRIGHT 2018 - 2021 Leyutek. All rights reserved.)
  6. * 完成日期:2021年07月01日
  7. * 内 容:
  8. * 注 意:
  9. **********************************************************************************************************
  10. * 取代版本:
  11. * 作 者:
  12. * 完成日期:
  13. * 修改内容:
  14. * 修改文件:
  15. *********************************************************************************************************/
  16. /*********************************************************************************************************
  17. * 包含头文件
  18. *********************************************************************************************************/
  19. #include "Wwdgt.h"
  20. #include "gd32e230x_conf.h"
  21. /*********************************************************************************************************
  22. * 宏定义
  23. *********************************************************************************************************/
  24. /*********************************************************************************************************
  25. * 枚举结构体定义
  26. *********************************************************************************************************/
  27. /*********************************************************************************************************
  28. * 内部变量
  29. *********************************************************************************************************/
  30. /*********************************************************************************************************
  31. * 内部函数声明
  32. *********************************************************************************************************/
  33. static void ConfigWwdgt(); //配置Wwdgt
  34. /*********************************************************************************************************
  35. * 内部函数实现
  36. *********************************************************************************************************/
  37. /*********************************************************************************************************
  38. * 函数名称:ConfigWwdgt
  39. * 函数功能:配置WWDGT
  40. * 输入参数:
  41. * 输出参数:void
  42. * 返 回 值:void
  43. * 创建日期:2021年07月01日
  44. * 注 意:WWDGT clock = (PCLK1 (36MHz)/4096)/8 = 1098Hz (~910 us)
  45. * window : ~910 * (127-80)= 42.6ms < refresh window < ~910 * (127-63) =58.2ms
  46. *********************************************************************************************************/
  47. static void ConfigWwdgt()
  48. {
  49. rcu_periph_clock_enable(RCU_WWDGT); //使能WWDGT时钟
  50. wwdgt_config(127, 0, WWDGT_CFG_PSC_DIV8); //设置计数值127,窗口值80,分频系数8
  51. wwdgt_enable(); //使能窗口看门狗定时器
  52. }
  53. /*********************************************************************************************************
  54. * API函数实现
  55. *********************************************************************************************************/
  56. /*********************************************************************************************************
  57. * 函数名称:InitWwdgt
  58. * 函数功能:初始化WWDGT模块
  59. * 输入参数:void
  60. * 输出参数:void
  61. * 返 回 值:void
  62. * 创建日期:2021年07月01日
  63. * 注 意:
  64. *********************************************************************************************************/
  65. void InitWwdgt(void)
  66. {
  67. ConfigWwdgt(); //配置Wwdgt
  68. }
  69. /*********************************************************************************************************
  70. * 函数名称:FeedWWDGT
  71. * 函数功能:喂狗
  72. * 输入参数:void
  73. * 输出参数:void
  74. * 返 回 值:void
  75. * 创建日期:2021年07月01日
  76. * 注 意:
  77. *********************************************************************************************************/
  78. void FeedWwdgt(void)
  79. {
  80. wwdgt_counter_update(127);
  81. }