关于STM32L100xx, STM32L151xx, STM32L152xx ,STM32L162xx 的复位
有三种Reset:System 复位,Power 复位,RTC域复位.
System 复位
System复位所有寄存器,但除了RTC,RTC backup寄存器和控制/状态寄存器RCC_CSR。
system复位产生的情形有:
1. NRST引脚拉低
2. 看门狗计数结束(WWDG复位)
3. 独立看门狗技术结束(IWDG复位)
4. 软件复位(SW复位)
5. 低功耗管理复位
6. 选项字节加载复位
7. 退出Standby模式
这些复位源可以通过查看RCC_CSR寄存器的相应复位标识位进行确认。
Software复位
通过设置Cortext-M3的应用中断与复位控制(Application Interrupt and Reset Control) 寄存器的SYSRESETREQ位复位。需要参考Cortext-M3内核相关资料。
低功耗管理复位
以下两种情形产生低功耗管理复位:
1. 进入Standby模式:
用户选项字节中复位nRST_STDBY位使能这种复位。该情形下,任意时候执行完进入Standby模式的序列,设备都将进入复位状态而不是进入Standby模式。
2. 进入Stop模式:
用户选项字节中复位nRST_STOP位使能这种复位。该情形下,任意时候执行完进入Stop模式的序列,设备都将进入复位状态而不是进入Stop模式。
选项字节加载复位
FLASH_PECR寄存器的OBL_LAUNCH位置1产生选项字节载入复位。这个位用来软件方式加载选项字节。
Power 复位
产生power复位的情形:
1.Power-on/power-down复位(POR/PDR复位)
2.BOR复位
power复位可以复位所有寄存器的值,包括RTC域的寄存器。
这些复位源产生的复位使得NRST引脚在延迟阶段一直处于低电平状态。RESET服务入口向量地址为0x0000_0004。
system复位信号也在NRST引脚上输出。脉冲发生器为每个内部的复位源产生一个最小的20us的复位时间。外部复位情形下,复位脉冲在NRST引脚拉低的情形下产生。
RTC 和 backup寄存器reset
下面两种情况才可以复位RTC外围,RTC时钟源选择(RCC_CSR中)和backup寄存器:
1. 置位RCC_CSR寄存器的RTCRST引发的复位。
2. Power reset(BOR/POR/PDR)