1. 冷启动和热启动:所谓冷启动(clod)是指硬件环境通过加电启动,在romInit()函数中需要保存系统启动类型,启动类型的宏定义为BOOT_COLD。所谓热启动(warm)是通过调用reboot()、Ctrl+X或异常中断重新启动目标机系统,实际上这些操作是把控制权传递给ROM中的监控函数sysToMonitor(),该函数位于sysLib.c文件中,如果执行sysToMonitor(2)则系统将热启动。上电复位和单板RESET键复位为冷启动,通过软件复位为热启动,它们之间的差别如下表所示:
比较项 |
上电复位PORESET |
硬复位HRESET |
软复位SRESET |
配置时钟否? |
是 |
否 |
否 |
读配置字否? |
是 |
是 |
否 |
方向性 |
输入 |
双向 |
双向 |
复位结束后可能进入状态 |
从复位向量处正常运行程序 |
从复位向量处正常运行程序 |
当管脚信号DSCK为高时进入到调试模式;为低时从复位向量处正常运行程序 |
复位产生源 |
外部 |
外部或内部 |
外部或内部 |
所接的管脚 |
PORESET |
HRESET |
SRESET |