Cortex-M内核的软件复位方式

描述

这里只讨论内核的软件复位方式。像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

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分