你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】STM32 窗口看门狗相关类型和函数

[复制链接]
STMCU小助手 发布时间:2022-6-13 17:26
01. WWDG概述
4 l! M6 I. L3 \1 D+ j/ L" z' jstm32f4xx_wwdg.h和 stm32f4xx_wwdg.c文件中。4 w( p2 H4 G) g% ^; G5 _
4 K/ P& E2 b: V/ ^% h( g! p/ |/ K
02. 相关类型& _! b9 ^( ]0 v
WWDG_Prescaler2 P# I* c* d# K$ I& h2 o% q+ t, [) ~

; [' V$ q$ L2 t; q- H" j: F! B
  1. /** @defgroup WWDG_Prescaler
    7 @) G% J1 t2 f# i6 h, Z
  2.   * @{& v9 a; B9 x) ~: ^8 |. ^
  3.   */
    7 m2 v  b: A! e6 {) X/ I# X
  4. " Z4 n) d8 o: D& I) c
  5. #define WWDG_Prescaler_1    ((uint32_t)0x00000000). @$ r4 c: @% x: T' n3 e
  6. #define WWDG_Prescaler_2    ((uint32_t)0x00000080)
    0 z6 G1 i8 G$ Y
  7. #define WWDG_Prescaler_4    ((uint32_t)0x00000100)1 u- y' S7 ?4 p% j  u: R6 s
  8. #define WWDG_Prescaler_8    ((uint32_t)0x00000180)+ w2 t; A6 E. K
  9. #define IS_WWDG_PRESCALER(PRESCALER) (((PRESCALER) == WWDG_Prescaler_1) || \
    " l# c3 S6 T' G  T2 Q
  10.                                       ((PRESCALER) == WWDG_Prescaler_2) || \
    - N9 Q- ?1 u" |4 c- H* b( n
  11.                                       ((PRESCALER) == WWDG_Prescaler_4) || \
    : p& `! i! t1 u8 t3 W, K
  12.                                       ((PRESCALER) == WWDG_Prescaler_8))( l% b/ X  m$ V6 c
  13. #define IS_WWDG_WINDOW_VALUE(VALUE) ((VALUE) <= 0x7F)* L  J2 a; |; q) G" @/ N7 P
  14. #define IS_WWDG_COUNTER(COUNTER) (((COUNTER) >= 0x40) && ((COUNTER) <= 0x7F))
复制代码
2 N, ]9 j* l7 e
中断处理函数
  1.   WWDG_IRQn                   = 0,      /*!< Window WatchDog Interrupt*/
复制代码

7 J9 S9 G6 d0 q1 |& x2 E$ G03. 相关函数# s/ u( W  S, t  T' }4 w
  1. /*  Function used to set the WWDG configuration to the default reset state ****/  5 ~1 Y7 \4 ?: u0 |4 H: r
  2. void WWDG_DeInit(void);! N* E5 {- J: L! `- v3 U
  3. . d7 A; @. _1 k0 l
  4. /* Prescaler, Refresh window and Counter configuration functions **************/
    1 @) l. v% a  Q7 F8 c) p$ T6 N- b8 \
  5. void WWDG_SetPrescaler(uint32_t WWDG_Prescaler);' x# n% b5 f  {+ Q8 W
  6. void WWDG_SetWindowValue(uint8_t WindowValue);
    . U9 w/ f1 b, Y1 C$ M$ y; n$ X
  7. void WWDG_EnableIT(void);1 D$ Z! X; Z  j& H; O
  8. void WWDG_SetCounter(uint8_t Counter);
    ! s3 _% D' w1 O& O6 {3 y5 J, w: b4 j

  9. 9 v! X. H2 ~# ~2 R0 {4 N& d/ f
  10. /* WWDG activation function ***************************************************/7 ^4 g' K+ M6 r# B- L: U: r
  11. void WWDG_Enable(uint8_t Counter);
    8 m+ c) \+ ]4 P/ D5 d( o1 }, Q% S

  12. 3 h; V6 r$ P0 w$ w; ~2 ^6 P! l3 r
  13. /* Interrupts and flags management functions **********************************/
    2 U2 `8 U% c; B( C2 y! f& D
  14. FlagStatus WWDG_GetFlagStatus(void);7 ?5 c$ f/ O5 F# D
  15. void WWDG_ClearFlag(void);
复制代码

. }3 D) R9 c6 y0 U+ g2 y04. 结构体封装
: r9 Z$ x* D. m; N" H
  1. /** 4 a7 H7 e  }" z1 o- T5 T; W% o$ M, Q
  2.   * @brief Window WATCHDOG
    8 Y) P; N% B5 Q  k( S5 t
  3.   */
    . }( J3 X3 p+ N+ i! E# S: x

  4. ( _* ^1 c5 g9 t6 G7 v
  5. typedef struct
      q' _8 f/ X$ I6 Q! Q
  6. {. F; K" b& q. r3 `$ L' z& B) x
  7.   __IO uint32_t CR;   /*!< WWDG Control register,       Address offset: 0x00 */
    : @. t& b$ g! J0 D
  8.   __IO uint32_t CFR;  /*!< WWDG Configuration register, Address offset: 0x04 */6 U* U; Z: S% U7 ^4 k$ t
  9.   __IO uint32_t SR;   /*!< WWDG Status register,        Address offset: 0x08 */
    $ c% I& X  c. _- G5 t- ?
  10. } WWDG_TypeDef;
复制代码
4 G9 p+ o5 Y, c! i4 a
/ V, \* T3 O: W# @( u8 T9 l' A
7 ~3 G, i& U1 R* O; |8 ~6 \# f
赞 收藏 评论0 发布时间:2022-6-13 17:26

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版