找回密码
 注册
搜索
查看: 1435|回复: 6

[综合资料] 解析STM32启动过程(转)

[复制链接]
发表于 2012-7-18 14:11:58 | 显示全部楼层 |阅读模式
当前的嵌入式应用程序开发过程里,并且C语言成为了绝大部分场合的最佳选择。如此一来main函数似乎成为了理所当然的起点——因为C程序往往从main函数开始执行。但一个经常会被忽略的问题是:微控制器(单片机)上电后,是如何寻找到并执行main函数的呢?很显然微控制器无法从硬件上定位main函数的入口地址,因为使用C语言作为开发语言后,变量/函数的地址便由编译器在编译时自行分配,这样一来main函数的入口地址在微控制器的内部存储空间中不再是绝对不变的。相信读者都可以回答这个问题,答案也许大同小异,但肯定都有个关键词,叫“启动文件”,用英文单词来描述是“Bootloader”。



        无论性能高下,结构简繁,价格贵贱,每一种微控制器(处理器)都必须有启动文件,启动文件的作用便是负责执行微控制器从“复位”到“开始执行main函数”中间这段时间(称为启动过程)所必须进行的工作。最为常见的51,AVR或MSP430等微控制器当然也有对应启动文件,但开发环境往往自动完整地提供了这个启动文件,不需要开发人员再行干预启动过程,只需要从main函数开始进行应用程序的设计即可。



专营STM8/32
QQ 940436962
http://y-ec.taobao.com/

       话题转到STM32微控制器,无论是keil uvision4还是IAR EWARM开发环境,ST公司都提供了现成的直接可用的启动文件,程序开发人员可以直接引用启动文件后直接进行C应用程序的开发。这样能大大减小开发人员从其它微控制器平台跳转至STM32平台,也降低了适应STM32微控制器的难度(对于上一代ARM的当家花旦ARM9,启动文件往往是第一道难啃却又无法逾越的坎)。

【文件名】:12718@52RD_解析+STM32+的启动过程.pdf
【格 式】:pdf
【大 小】:445K
【简 介】:
【目 录】:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2012-8-3 15:07:48 | 显示全部楼层
[em06]哈哈
点评回复

使用道具 举报

发表于 2012-7-24 00:10:13 | 显示全部楼层
xiexie
点评回复

使用道具 举报

发表于 2012-11-16 13:51:20 | 显示全部楼层
谢谢分享![em01]
点评回复

使用道具 举报

发表于 2012-11-22 15:55:37 | 显示全部楼层
好东西,谢谢~~~~[em01]
点评回复

使用道具 举报

发表于 2013-7-26 09:41:06 | 显示全部楼层
谢谢分享...
点评回复

使用道具 举报

发表于 2013-8-13 14:07:43 | 显示全部楼层
多谢,看一看。
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-10-9 14:25 , Processed in 0.047697 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表