STM32启动过程相关代码分析
时间:11-11
来源:互联网
点击:
arm to thumb code */*(.glue_7t) /* glue thumb to arm code */KEEP (*(.init))KEEP (*(.fini)). = ALIGN(4); _etext = .; /* define a global symbols at end of code */ } >FLASH
可以看到startup_stm32f10x_md.s中定义的这个段.isr_vector确实放在了最开头的位置。下面其他的内容就不分析了可查看下面地址获取更多信息
(http://www.stf12.org/developers/freerots_ec-linker_script.html)。
但是我们前面说复位向量在0x0000 0004,现在其地址是在flash中,所以地址是0x0800 0004,这个怎么回事呢?原来,stm32可以通过boot0、boot1引脚的配置
将flash映射到0x0000 0000处。具体可参考stm32的用户手册2.4节:
从主闪存存储器启动(BOOT0 = 0,BOOT1 = X):主闪存存储器被映射到启动空间(0x0000 0000),但仍然能够在它原有的地址(0x0800 0000)访问它,即闪存存
储器的内容可以在两个地址区域访问,0x0000 0000或0x0800 0000。
STM32启动过程代码分 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)