MCU软复位原理详解.doc

上传人:白大夫 文档编号:3256114 上传时间:2019-08-06 格式:DOC 页数:1 大小:13KB
返回 下载 相关 举报
MCU软复位原理详解.doc_第1页
第1页 / 共1页
亲,该文档总共1页,全部预览完了,如果喜欢就下载吧!
资源描述

《MCU软复位原理详解.doc》由会员分享,可在线阅读,更多相关《MCU软复位原理详解.doc(1页珍藏版)》请在三一文库上搜索。

1、MCU软复位原理详解同事Jicheng在其博客介绍了软复位的原理。我再自己整理一遍以加深印象。软复位的函数如下(用在IAR或者Keil里都可以),核心是对AIRCR寄存器进行操作。void software_reset(void) _DSB(); /* Ensure all outstanding memory accesses includedbuffered write are completed before reset */ SCB_AIRCR = (0x5FA tion of memory access */7 while(1); /* wait unTIl reset */8AIR

2、CR:ApplicaTIon Interrupt and Reset Control Register想要实现软复位,先给VRCTKEY赋个0x05FA,再想SYSRESETEQ写1即可实现软复位。DSB指令即Data Synchronization Barrier(数据同步屏障),它是一种特殊类型的内存屏障。 只有当此指令执行完毕后,才会执行程序中位于此指令后的指令。 当满足以下条件时,此指令才会完成: 1)位于此指令前的所有显式内存访问均完成。 2)位于此指令前的所有缓存、跳转预测和 TLB 维护操作全部完成。 另外和内存屏障相关的还有两个指令,为DMB和ISB。 DMB:Data Memory Barrier ISB:Instruction Synchronization Barrier 具体细节可以参考ARMv7-M Architecture Reference Manual当软复位发生后,可以通过寄存器RCM_SRS1(Reset Control Moudle_System Reset Status Register) 寄存器来判断。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1