久芯网

STM32 如何进行内核复位?

avatar 50031185 提问时间: 2023-09-21 19:41:21 / 未解决
STM32如何用HAL库进行内核复位
普通的系统复位函数如下:

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

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


如需获得 STM32 等器件的更多信息,请点击链接或 点击此处 联系在线客服!

5个回答
  • avatar 陌路夕颜
    回答时间: 2023-09-21 20:10:28

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

  • avatar lebment
    回答时间: 2023-09-21 20:27:29

    HAL_NVIC_SystemReset

  • avatar 50031185
    回答时间: 2023-09-21 20:47:48
    lebment 发表于 2020-9-11 14:48
    HAL_NVIC_SystemReset

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

  • avatar lebment
    回答时间: 2023-09-21 21:14:21
    50031185 发表于 2020-9-11 23:05
    这是系统复位 不是内核复位

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

  • avatar lebment
    回答时间: 2023-09-21 21:41:27
    50031185 发表于 2020-9-11 23:05
    这是系统复位 不是内核复位

    sleep standby stop模式也算是内核复位了

会员中心 微信客服
客服
回到顶部