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

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

[复制链接]
STMCU小助手 发布时间:2022-4-1 15:18
01. WWDG概述3 y9 B; j" ^( z4 d8 M, e9 s1 s0 [
stm32f4xx_wwdg.h和 stm32f4xx_wwdg.c文件中。; D8 R, U' S# q1 Y; A

' q5 ]& ^! F& I3 f* W" r02. 相关类型4 u; _0 U9 Z6 X1 [" C7 b
WWDG_Prescaler
" z& g+ g' }0 g5 I1 q. \" F& _5 @& r
  1. /** @defgroup WWDG_Prescaler
    . J! k6 c, K; ?# _2 D- N) y
  2.   * @{, E" a5 E, L1 T2 e; M
  3.   */3 T" T1 B* {* |+ @1 |/ x4 e
  4. ; A9 \% u/ ]* p, M7 Z) ^" |* o9 g9 j
  5. #define WWDG_Prescaler_1    ((uint32_t)0x00000000)( @" O; ?& t% y
  6. #define WWDG_Prescaler_2    ((uint32_t)0x00000080)0 L+ p8 _6 k, M
  7. #define WWDG_Prescaler_4    ((uint32_t)0x00000100)
    0 \; l" |  Q4 [; n
  8. #define WWDG_Prescaler_8    ((uint32_t)0x00000180); S9 l" Q+ q$ F* b
  9. #define IS_WWDG_PRESCALER(PRESCALER) (((PRESCALER) == WWDG_Prescaler_1) || \
    3 M2 [7 p8 p  A
  10.                                       ((PRESCALER) == WWDG_Prescaler_2) || \$ C& u1 V8 I9 M
  11.                                       ((PRESCALER) == WWDG_Prescaler_4) || \: g7 s' l( w0 ?' L* t- X# H! Z
  12.                                       ((PRESCALER) == WWDG_Prescaler_8))
    3 E# W( @# I) ~% o. [- H
  13. #define IS_WWDG_WINDOW_VALUE(VALUE) ((VALUE) <= 0x7F)
    % q# s, b  I  d1 n; l
  14. #define IS_WWDG_COUNTER(COUNTER) (((COUNTER) >= 0x40) && ((COUNTER) <= 0x7F))
复制代码

: I* ?; I& K& l: c3 m中断处理函数' @* e7 _) d4 I% i) p

2 g/ S3 [2 K3 d% {8 s. u" l4 X1 _+ c
  1.   WWDG_IRQn                   = 0,      /*!< Window WatchDog Interrupt*/
复制代码
/ t* x! G- N2 B+ }
03. 相关函数
2 r+ n+ w( _4 |" U% [2 U
  1. /*  Function used to set the WWDG configuration to the default reset state ****/  1 {+ {) q% Y$ t, W
  2. void WWDG_DeInit(void);
    - Y! D/ c- K: f6 c
  3. - r* P6 ^  }. \
  4. /* Prescaler, Refresh window and Counter configuration functions **************/
    ' w# o# y' ~! w! C# ^5 p
  5. void WWDG_SetPrescaler(uint32_t WWDG_Prescaler);
    8 `4 ~) q: G$ r
  6. void WWDG_SetWindowValue(uint8_t WindowValue);" \, n; A: K$ ~2 V+ Q: B6 e/ Y
  7. void WWDG_EnableIT(void);8 G5 @9 Q6 b. m! S% C9 ^1 K; L
  8. void WWDG_SetCounter(uint8_t Counter);# _: f( w- h/ }) R7 R

  9. / ~. _5 a' @9 Y: i4 q' h
  10. /* WWDG activation function ***************************************************/( a; k4 A& \- `1 K9 g2 P/ q
  11. void WWDG_Enable(uint8_t Counter);( r% [7 Y0 |' K; W8 {

  12. 2 O; u' D7 q: K) c& t& O
  13. /* Interrupts and flags management functions **********************************/
    4 Y. d' q- j- s
  14. FlagStatus WWDG_GetFlagStatus(void);
    : t3 [; \* @( n" s; h9 d& M* P
  15. void WWDG_ClearFlag(void);
复制代码
, }# U+ _9 F2 B2 M: H
04. 结构体封装
1 X& f3 V5 |' O0 a5 a
  1. /**
      r; ^/ D+ A4 j  P6 ~4 p
  2.   * @brief Window WATCHDOG' R1 j* I  ^: Z, d% |
  3.   */
    2 [. o4 F* E5 y. C( n

  4. 0 a/ `$ o8 o, B! C2 U
  5. typedef struct0 B1 q( Q8 P' G. h2 I, Q( F
  6. {6 |! v8 v6 ]; j) _& n! g3 m
  7.   __IO uint32_t CR;   /*!< WWDG Control register,       Address offset: 0x00 */+ H( C9 G" m/ J! h9 I
  8.   __IO uint32_t CFR;  /*!< WWDG Configuration register, Address offset: 0x04 */; E; Y" f1 E' w- {) _: D3 n2 D! X9 W
  9.   __IO uint32_t SR;   /*!< WWDG Status register,        Address offset: 0x08 *// r! u4 j2 V8 p4 }- [+ ?
  10. } WWDG_TypeDef;
复制代码
" O2 g* |* I9 p: b

, q$ R: E- a; C' G% b
收藏 评论0 发布时间:2022-4-1 15:18

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版