打印
[PIC32/SAM]

MPU上电启动顺序

[复制链接]
1727|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 MCHPMPU 于 2019-2-3 14:32 编辑

  所有AT91的芯片内部都固化了一级引导程序Romcode。该程序是系统上电后运行的第一段程序,主要功能是完成一些基本的初始化,并按照一定的顺序遍历外部存储器寻找并加载下一级引导程序。另外,Romcode中还集成了SAM-BA监视器模块,当Romcode在外部存储器中找不到有效代码时,就会进入SAM-BA监视器模式,此时可以连接主机SAM-BA上位机软件并进行在线编程。Romcode执行流程如下:






  至于外部存储器的遍历顺序,仅以SAMA5D2为例进行说明,下图来源于SAMA5D2的数据手册,描述了C版本的Romcode中对外部存储器的遍历顺序。用户也可以通过修改启动配置字寄存器(Boot Configuration Word)来对该顺序进行定制,具体请参考数据手册16.4Boot Configuration一节




  另外附上SAM产品支持的外部存储器列表,供各位查询参考。

     SAM产品的启动流程大同小异,用户可以参考相应数据手册中的Boot Strategies或者Standard Boot Strategies章节。其中值得一提的是,SAM9系列产品中有个BMSBootMode Select)引脚,这个引脚是系统复位时通过硬件设置的,如果检测到BMS为高电平,芯片将从内置的ROM启动,运行固化的Romcode,如果检测为低电平,则从连接在外部总线片选0的存储器(一般是NORFlash)中启动,这样用户就可以使用自己的一级引导程序了。
附上一篇AN - Booting from External Non-Volatile Memory (NVM) onSAMA5D2 MPU
http://ww1.microchip.com/downloads/en/AppNotes/AN2791-Booting-from-External-Non-Volatile-Memory-on-SAMA5D2-MPU-Application-Note-DS00002791A.pdf
  到这里**就要结束了,希望对小伙伴们有所帮助。大家有感兴趣的话题也可留言告诉我们,我们会积极响应的



沙发
mmuuss586| | 2019-2-10 11:53 | 只看该作者
感谢分享

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

22

帖子

2

粉丝