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

【经验分享】STM32H7 PVD断电的使用

[复制链接]
STMCU小助手 发布时间:2021-12-26 16:43
1.遇到的问题
7 R% _8 t; x6 [! U. I$ n' R9 c' p8 U
我使用的是STM32H747,在初始化后发现断电后并没有进入中断。最后查找到因为STM32H747是双核CPU,在HAL库源码中,有双核的宏定义将一些配置给屏蔽了,因为我只用到了单核,就把源码中的宏取消掉了,然后就可以正常进入中断了。使用不是双核的就不需要更改了。
$ l; F# K+ ]6 t9 E; V$ F/ }* B) M' t8 L
2.下面是PVD的程序
& d* x# d3 x' o+ Z5 u" V- {) V. W. S2 k
  1. void PVD_Init(void)
    0 P/ O: |2 [0 o5 c1 y
  2. {6 X5 ~0 {/ I; L/ k
  3.     PWR_PVDTypeDef sConfigPVD = {0};6 ^$ _3 m4 l( t( g0 A/ [) [  f# N
  4. 7 M6 z5 V: |$ M! ?
  5.     sConfigPVD.PVDLevel = PWR_PVDLEVEL_6;
    5 f, \- {5 y& A
  6.     sConfigPVD.Mode = PWR_PVD_MODE_IT_RISING;
    6 D" k& q: `8 w. e2 w
  7.     HAL_PWR_ConfigPVD(&sConfigPVD);3 ]& o) I" @9 [2 R4 {! ]
  8. ) i% X# X# B6 E3 H" H: X# t
  9.     HAL_NVIC_SetPriority(PVD_IRQn, 0, 0);       /* 配置PVD中断优先级 */5 x+ }# P9 e! N
  10.     HAL_NVIC_EnableIRQ(PVD_IRQn);               /* 使能PVD中断 */9 Q7 C% }* D6 y2 U' M

  11. ! R0 S8 B* k6 N. F4 n
  12.     HAL_PWR_EnablePVD();  r# l# {; z! }( W% M
  13. }3 s! A: x: u- h! x* x, r; [# W  O
  14. ; Q- F1 d. z( H! Z7 y* T# l
  15. 0 U  ?3 m) F% y' [; T
  16. /* PVD中断处理 */
    1 ^7 K. K* {6 h) X
  17. void PVD_AVD_IRQHandler(void)
    . U) D9 v5 O) U: h6 I
  18. {0 V- b) `% R, I" M8 @
  19.     HAL_PWR_PVD_IRQHandler();
    ) K  A$ h$ N8 P! `8 }7 e, Z, ~* ?
  20. }0 s7 w" B' ?8 v

  21. : d; p/ @6 ^$ U0 D! B0 E
  22. void HAL_PWR_PVDCallback(void)
    8 S3 T3 \  S* @
  23. {# b" J. R. j2 Q5 Y* h) ]; Q! c9 a" h
  24. //增加自己需要在断电时候的处理
    ; \3 {. ~7 o7 C0 m% Q/ N
  25. 5 {8 t) D/ w% w- E
  26. }6 F; u/ |- `2 I$ ?1 R
复制代码
2 m$ C5 e+ F: D2 v9 A

8 }' l, a# X# g  j0 b) T
收藏 评论0 发布时间:2021-12-26 16:43

举报

0个回答

所属标签

相似分享

官网相关资源

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