50031185 发表于 2020-9-10 20:38:42

STM32 如何进行内核复位?

STM32如何用HAL库进行内核复位
普通的系统复位函数如下:

/ **
简短的系统重置
详细信息发起系统重置请求以重置MCU。
* /
__STATIC_INLINE void NVIC_SystemReset(void)
{
__DSB(); / *确保包括所有未完成的内存访问
                                                                     缓冲写操作在复位之前完成* /
SCB-> AIRCR =((0x5FAUL << SCB_AIRCR_VECTKEY_Pos)|
               SCB_AIRCR_SYSRESETREQ_Msk);
__DSB(); / *确保完成内存访问* /

for(;;)/ *等待重置* /
{
    __NOP();
}
}

陌路夕颜 发表于 2020-9-11 11:29:44

HAL库估计也是调用这个函数,你可以再封装一下这个函数是

lebment 发表于 2020-9-11 14:48:34

HAL_NVIC_SystemReset

50031185 发表于 2020-9-11 23:05:51

lebment 发表于 2020-9-11 14:48
HAL_NVIC_SystemReset

这是系统复位 不是内核复位

lebment 发表于 2020-9-12 12:32:00

50031185 发表于 2020-9-11 23:05
这是系统复位 不是内核复位

那你多看看手册吧,找得到,我把你芯片蘸酱吃

lebment 发表于 2020-9-12 12:32:58

50031185 发表于 2020-9-11 23:05
这是系统复位 不是内核复位

sleep standby stop模式也算是内核复位了
页: [1]
查看完整版本: STM32 如何进行内核复位?