硬件复位是复位启动以后需要重新加载加载FPGA、DSP等,也有可能在这个操作之前初始化化CPU,加载系统文件等操作,具体视需要而定,然后初始化一些配置芯片;
软复位则不需要进行FPGA、DSP等的加载,只是一些配置芯片的初始化。
用最少的字来解释:
复位的概念:让赛跑运动员各自回到自己的起跑线。
硬复位:用拖车把运动员给拖到起跑线。
软复位:运动员自己走到起跑线。
硬件复位是靠复位电路,而这种类型的复位从理论上讲只是起到了软件程序重启的作用,之前所有保存的数据是依然存在的,当软件重启后有可能会清掉或者不清这些数据;
软件复位分几种,一种是控制其他芯片复位,这种其实属于硬件复位范畴;还有一种是自己复位,这需要软件支持,从这里来说就有自欺欺人的味道。因为如果自己复位,就必须有其他程序来支撑这个复位过程,也就是说,不是真正全面的软件重启。看门狗从这点上讲属于硬件复位范畴。
硬件复位,即产生脉冲(无论是power on上电时自产生,还是手动、或外部看门狗产生;高/低电平有效、持续时间、沿等要求,视具体芯片要求而定),加至芯片内各触发器的Reset端;
软复位,即由用户代码决定复位时机。可能是让程序跳回至起点,或配合片内复位模块,产生等同于硬件复位的效果(如片内集成了WDT)。
阅读(3136) | 评论(0) | 转发(0) |