stm32f407软重启的实现(上位机软件控制系统重启)

在STM32中有几种复位方式:1、Rest按键复位,2、看门狗复位。3、软件复位。对于前两种复位机制,后期再做补充,此处重点介绍软件复位。

三、因近期做个东西需要系统通过上位机指令复位,因此需添加复位函数。函数具体实现如下:

1、在stm32f4xx.h中添加(在其他地方添加也可):

#define SCB_AIRCR                     (*(volatite unsigned long *)0xE000ED0C)      //Reset control Address Register

#define SCB_RESET_VALUE       0x05FA0004                                                   //reset value ,write to SCB_AIRCR  can reset cpu

2、编写复位函数

在任意功能函数区均可编写,本次测试时在main函数所在文件中编写:

void Reset_Cpu(void)

{

  SCB_AIRCR=SCB_RESET_VALUE;

}

在需要的地方调用该函数即可实现CPU复位。

猜你喜欢

转载自www.cnblogs.com/warren-notebook/p/13176105.html