一、nxp 1853系列启动流程

1、上电复位后使用内部IRC 12M振荡源作为时钟。程序指针指向0x00000000处。
2、将bootrom地址映射到0x00000000处。不用执行该步骤,上电时影子寄存器(M3MEMMAP)中的值已经自动映射。访问0处地址自动转换到0x10400000处。
3、首先执行bootrom处引导代码,存放在0x10400000处。
4、检测启动引脚配置,配置脚P2_9、P2_8、P1_2和P1_1。
5、根据配置脚情况从串口、USB、flash中选择一种方式启动。这个过程中会修改影子寄存器内容,让入口地址映射到0处,保证正常启动。

二、程序地址映射

上电后pc指针是从0开始的,但是程序一般存在非0地址处。coretexM3采用映射方式将程序存储空间映射到地址0处,映射方法是将程序存储空间起始地址写入M3MEMMAP寄存器中。映射完成后就能执行程序存储空间中的代码。下图是一个使用外部存储器的地址映射图。

三、向量表偏移

当代码有远程升级功能时,执行文件会被分作两部分,前面一小部分存放BootLoader镜像实现升级功能,实际执行文件存放在另一部分。整个执行文件被顺序存放在控制器的内部flash存储器上,实际执行文件的向量表未放在flash存储起始地址上,当实际程序文件执行异常时就无法跳转到异常向量表上。cortexM3提供了向量表偏移功能,直接将向量表的便宜量写入VTOR寄存器即可。

cortexM3启动简介相关推荐

  1. STM32(Cortex-M3)启动过程+IAR中xcl及icf文件详解

    一:STM32(Cortex-M3)启动过程(入口地址) ARM7和ARM9启动时从绝对地址0X00000000开始执行复位中断程序,即固定了复位后的起始地址,但中断向量表的位置是可变的. Corte ...

  2. u-boot分析之启动简介(一)

    目录 u-boot启动简介(一) 启动概述 内部存储布局 Bootloader概述 内核启动参数 taggedlist 体验一下实际的Uboot U-boot的使用帮助 U-boot基本要求 u-bo ...

  3. DSP28379D_双核启动简介

    双核启动简介 DSP的上电过程.Boot Mode以及Boot Loader 双核的调试.烧写 参考资料目录 DSP的上电过程.Boot Mode以及Boot Loader 对于双核DSP上电后,启动 ...

  4. Android以太网框架情景分析之启动简介

            Android以太网框架情景分析之启动简介 Android网络框架分析系列文章目录: Android P适配以太网功能开发指南 Android以太网框架情景分析之启动简介 Androi ...

  5. Android-0.AMS初始化和启动简介

    文章目录 1.Activity Manager简介 2.AMS 的启动和初始化过程 2.1.AMS 所在的system进程 2.1.AMS 初始化流程 2.2.AMS 启动流程 2.3.AMS 的 s ...

  6. Cortex-M3启动深度解析

    为什么80%的码农都做不了架构师?>>>    Cortex-Mx启动,备忘,以免将来忘记. 中断向量表不用说,从重置中断开始吧 LDR R0, =SystemInit BLX R0 ...

  7. Cortex-M3指令集简介

    Cortex-M3只使用Thumb-2指令集.这是个了不起的突破,因为它允许32位指令和16位指令水乳交融,代码密度与处理性能两手抓,两手都硬.而且虽然它很强大,却依然易于使用. 在过去,做ARM开发 ...

  8. SpringBoot杂货铺开源项目启动简介

    最近越来越多的小伙伴开始找博主要免费的源码啦,看来博主的源码对大家还是很有帮助的

  9. ARM CORTEX-M3简介

    http://blog.163.com/dsp_lnint/blog/static/1031674342013616504320/ ARM公司于2006年推出了Cortex-M3微处理器核,ARM公司 ...

最新文章

  1. android-sdk-windows版本号下载
  2. AIX 用户密码永不过期
  3. 运行c++代码的软件_C语言入门干货:多种系统的C环境设置和简易代码运行
  4. python如何读取一个文件夹下的多个文件(夹)?
  5. 7月送书中奖名单,快看!
  6. 【原创】大叔算法分享(6)机器学习概览
  7. 手机变身高清摄像头 DroidCamX完全使用教程
  8. 2020-09-22回忆一下高中物理的弹性碰撞速度公式推导
  9. 『Hammerspoon』Mac 锁屏自动开关蓝牙
  10. oracle坏块,教你手把手修复oracle坏块(一)!!!
  11. java导出excel设置行高列宽_POI精确设置Excel的行高和列宽
  12. 100家大公司java笔试题汇总
  13. nokia专业显示器测试软件,液晶显示器显示屏NOkia幕检测工具
  14. 悟已往之不谏,知来者之可追。
  15. 苹果M1芯片曝重大Bug:大量用户4K显示器中招,系统兼容性有问题
  16. houdini环境变量服务器文件读不了,Windows下在普通命令行窗口里初始化Houdini环境...
  17. C++ vector中删除元素
  18. java实现smtp_使用Java代码发送SMTP邮件
  19. 物料需求规划(MRP)(ERP的工作原理3)------(转)
  20. 点击网页上的联系我们弹出QQ对话框的实现

热门文章

  1. 办公百宝箱——PDF、格式转换、图片处理、屏幕录制
  2. android儿童模式,miui7儿童模式如何开启?儿童模式开启及使用方法总结
  3. 基于阿尔法开发板构建卡启动固件
  4. 试题C:乘积尾零 / 试题G:冷门进制 (思维)
  5. [JQuery学习笔记]——之一
  6. 地质雷达物理测量RADAN®7软件(Radan 7.6.19.11260)最新下载
  7. 【PAT甲级 - C++题解】1104 Sum of Number Segments
  8. MySQL基础命令(自练)
  9. Revit简单的门族创建及CAD图纸翻模门窗
  10. android sdk 混淆 修改,Android-SDK默认混淆配置ProGuard