探究cortex-m内核的2种软件复位方式:深入理解嵌入式系统开发技术
0 2023-12-06

这里只讨论内核的软件复位方式。像STM32的备份域复位里面也有软件复位,则不在本文讨论范围。额外提一句,上电复位是完整复位芯片所有东西,包括内核、debug部分、外设、中间逻辑电路状态(模块外部的逻辑电路状态,如果没有复位,也会影响到下次运行),因此需要确保做完全复位时候,应该使用上电复位。

一、cortex-m3

图1来自cortex m3编程手册

(1)SCB_AIRCR寄存器,VECTRESET位

该位只复位内核,不复位debug部分

(2)SCB_AIRCR寄存器,SYSRESETREQ位

该位一般叫做系统复位,该位定义为会复位内核,不复位debug部分,至于是否复位其他部分,比如外设,则由具体的芯片来实现

图1

二、cortex-m0

图2来自cortex m0编程手册

(1)SCB_AIRCR寄存器,VECTRESET位

cortex-m0没有提供这个位,也即cortex-m0没有提供单独复位内核的定义

(2)SCB_AIRCR寄存器,SYSRESETREQ位

参考cortex-m3

图2

三、其他参考

以下图3 图4来自 Cortex-M3-Definitive-Guide-EN.pdf

图3

图4


声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 相关技术文库
  • 单片机
  • 嵌入式
  • MCU
  • STM
下载排行榜
更多
评测报告
更多
广告