加载中…
正文 字体大小:

STM32启动模式理解浅析

(2016-08-20 11:41:53)
标签:

stm32

嵌入式

分类: STM32
STM32启动模式理解浅析
对于正点原子开发开发指南这个串口下载不是很理解,简单看了下手册。
STM32可以分为三种其启动模式,1:从主Flash启动 ; 2:从系统存储器启动(其实就是ROM);3:从嵌入式SRAM启动(其实就是常规的RAM)。三种模式根据BOOT0 和BOOT1的管脚电平来决定。具体参考STM32手册。STM32上电或者复位后,代码区始终从0x00000000开始,三种启动模式其实就是将各自存储空间的地址映射到0x00000000中。
1:从Flash启动,将主Flash地址0x08000000映射到0x00000000,这样代码启动之后就相当于从0x08000000开始。
2:从RAM启动,将RAM地址0x20000000映射到0x00000000,这样代码启动之后就相当于从0x20000000开始。
3:从系统存储器启动,开发指南上所讲就是这种启动模式。首先控制BOOT0 BOOT1管脚,复位后,STM32与上述两种方式类似,从系统存储器地址0x1FFF F000开始执行代码。系统存储器存储的其实就是STM32自带的bootloader代码,在bootloader中提供了UART1的接口,通过此接口可以将用户所需的程序代码下载到主Flash中(具体见手册:http://www.st.com/content/ccc/resource/technical/document/application_note/b9/9b/16/3a/12/1e/40/0c/CD00167594.pdf/files/CD00167594.pdf/jcr:content/translations/en.CD00167594.pdf)。下载完毕后,此时程序代码已经存储咋主Flash当中,这时切换启动模式(从主Flash启动),复位后所执行的就是刚刚下载到Flash中的代码了。

0

阅读 评论 收藏 转载 喜欢 打印举报
已投稿到:
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 不良信息反馈 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有