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

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

[复制链接]
STMCU小助手 发布时间:2021-12-26 16:43
1.遇到的问题5 A% u( Y" w, @9 w: n+ G
/ }! s# |8 l% b& W
我使用的是STM32H747,在初始化后发现断电后并没有进入中断。最后查找到因为STM32H747是双核CPU,在HAL库源码中,有双核的宏定义将一些配置给屏蔽了,因为我只用到了单核,就把源码中的宏取消掉了,然后就可以正常进入中断了。使用不是双核的就不需要更改了。  T7 [" Y- V; \! x; U- ?, J# F

8 I, ]9 L+ Q/ s+ O2.下面是PVD的程序. J6 t; o8 k2 ~& g
/ b4 N  j! u1 s7 N
  1. void PVD_Init(void)6 I) i4 `- h1 s, T4 @! y
  2. {* w; d0 {. _% A0 Z- V* O
  3.     PWR_PVDTypeDef sConfigPVD = {0};2 g' `5 s, ]3 T

  4. ; {7 ]0 C% `% m6 @/ x
  5.     sConfigPVD.PVDLevel = PWR_PVDLEVEL_6;
      f6 S+ N1 ^: W' s$ w% K4 j
  6.     sConfigPVD.Mode = PWR_PVD_MODE_IT_RISING;4 ~0 m& Z* |# P2 n+ }$ X, L& g
  7.     HAL_PWR_ConfigPVD(&sConfigPVD);
    / s$ I9 Q: G; U4 c9 Y
  8. ! _9 m5 t! E2 ?0 R6 [
  9.     HAL_NVIC_SetPriority(PVD_IRQn, 0, 0);       /* 配置PVD中断优先级 */
    ! P( m, N9 H1 l4 _, N
  10.     HAL_NVIC_EnableIRQ(PVD_IRQn);               /* 使能PVD中断 */
    & ~6 G7 e; x$ Z

  11. + M$ i% G. x0 N1 r% z
  12.     HAL_PWR_EnablePVD();9 b, a! N$ X1 y+ Y
  13. }
    . J( Z! M$ d8 s& i0 g
  14. $ J4 X- y0 p- H. R; X' e( s2 {, K7 k
  15. 2 N# l" E' a+ K# i% ~
  16. /* PVD中断处理 */! b1 K1 h" w- |/ V  J
  17. void PVD_AVD_IRQHandler(void)
    6 m+ P# E3 o- t4 N2 P9 M; S) b
  18. {
    ( L0 ~! a( m6 A, n
  19.     HAL_PWR_PVD_IRQHandler();! K( Y; g& V  H$ {
  20. }
    . J" J! Q# V5 ~7 Z& T5 o# z2 u
  21. # n' K! }  d8 c
  22. void HAL_PWR_PVDCallback(void)
    3 J4 n7 f# T! H
  23. {
    3 W" C+ \  O0 s4 v: C: Z# n
  24. //增加自己需要在断电时候的处理' n) e6 `1 h$ V1 Y

  25. . i7 ^; l" j+ W) a
  26. }' d9 v3 t, O. M+ D6 J
复制代码
3 r( |* r7 r% v* G+ }: v* t; |
' _, a' E9 Q8 C+ E2 I2 F& w7 `
收藏 评论0 发布时间:2021-12-26 16:43

举报

0个回答

所属标签

相似技术帖

官网相关资源

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