1.遇到的问题
我使用的是STM32H747,在初始化后发现断电后并没有进入中断。最后查找到因为STM32H747是双核CPU,在HAL库源码中,有双核的宏定义将一些配置给屏蔽了,因为我只用到了单核,就把源码中的宏取消掉了,然后就可以正常进入中断了。使用不是双核的就不需要更改了。
2.下面是PVD的程序
void PVD_Init(void)
{
PWR_PVDTypeDef sConfigPVD = {0};
sConfigPVD.PVDLevel = PWR_PVDLEVEL_6;
sConfigPVD.Mode = PWR_PVD_MODE_IT_RISING;
HAL_PWR_ConfigPVD(&sConfigPVD);
HAL_NVIC_SetPriority(PVD_IRQn, 0, 0); /* 配置PVD中断优先级 */
HAL_NVIC_EnableIRQ(PVD_IRQn); /* 使能PVD中断 */
HAL_PWR_EnablePVD();
}
/* PVD中断处理 */
void PVD_AVD_IRQHandler(void)
{
HAL_PWR_PVD_IRQHandler();
}
void HAL_PWR_PVDCallback(void)
{
//增加自己需要在断电时候的处理
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)