单片机软件复位和硬件复位的实现和个人总结的区别

微处理器复位方法:

  • 用硬件引脚RESET的复位方法;
  • 用看门狗的复位方法;
  • 自己程序控制的复位方法(本文方法,叫软件复位)

软件复位实现方法

  1. 首先声明一个函数指针,指向复位后要开始执行指令的位置:
    void (*app_start)(void) = 0x0000;
    可以根据具体微处理器复位后的位置,修改后边的地址。

  2. 之后,在自己的程序中想复位的地方调用app_start(); 也就是跳到0x0000位置执行指令。

  3. 可以根据不同微处理器复位的地址,修改上边的地址(0x0000)。实现上你可以跳到任何位置执行,或调用函数执行。


  下图是根据一个项目中用到的软件复位和硬件复位画的流程图,可以说明软件复位和硬件复位的一些区别




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值