微处理器复位方法:
- 用硬件引脚RESET的复位方法;
- 用看门狗的复位方法;
- 自己程序控制的复位方法(本文方法,叫软件复位)。
软件复位实现方法
首先声明一个函数指针,指向复位后要开始执行指令的位置:
void (*app_start)(void) = 0x0000;
可以根据具体微处理器复位后的位置,修改后边的地址。之后,在自己的程序中想复位的地方调用app_start(); 也就是跳到0x0000位置执行指令。
可以根据不同微处理器复位的地址,修改上边的地址(0x0000)。实现上你可以跳到任何位置执行,或调用函数执行。
下图是根据一个项目中用到的软件复位和硬件复位画的流程图,可以说明软件复位和硬件复位的一些区别