您的位置 首页 嵌入式

stm32 发动文件的挑选

最近在网上看到一些关于STM32启动文件的问题帖,都是类似这样的问题:随便选两个startup_stm32f10x_ld、hd、md这3个启动文件有什么不同??…

最近在网上看到一些关于STM32发动文件的问题帖,都是相似这样的问题:
随意选两个
“startup_stm32f10x_ld、hd、md这3个发动文件有什么不同???”
“官网固件库中的发动文件有啥差异,怎样挑选?”
查找了论坛,也看了一下,有一些答复,可是都不太全或许不甚明晰。其实我曾经也不清楚,当然我是新手,只不过是个爱折腾的新手,由于我觉得,这个有必要弄清楚。一是发动文件在一个工程中有着不行替代的效果,二是关于STM32这个让人蛋疼而又强壮的东东,经常是新手乱增加发动文件或许去找一下工程比如“依葫芦画瓢”的增加,试问你的MCU和人家工程比如的便是相同,换一款类型,要命[夸大的修辞手法,呵呵]?一切说,根据这些,我就说一说我的知道:
留意此处只针对MDK-ARM的IDE,其他的相同,只不过想阐明的是对不同的IDE,同一芯片类型的发动文件的“内容”是不相同的,这是由于编译器形成的,意思便是说,发动文件的功用相同,可是指令有所差异。这个每个发动文件也注释了,如:

(原文件名:.s for MDK IAR.JPG)
烦琐了……
发动文件的效果:
不管功能高低,结构简繁,价格贵贱,每一种微控制器(处理器)都有必要有发动文件,发动文件的效果便是担任履行微控制器从“复位”到“开端履行main函数”中心这段时刻(称为发动进程)一切必要进行的作业。最为常见的51,AVR或MSP430等微控制器当然也有对应发动文件,但开发环境往往主动完整地供给了这个发动文件,不需要开发人员再行干涉发动进程,只需要从main函数开端进行应用程序的规划即可。[来自网上]
我的了解,说白了,我们常说,程序履行都从main函数开端,是的,没错,可是在这之前是谁来完成了这一个繁琐而又杂乱的发动进程呢?便是它。(看来.s尽干脏活苦活,就像“活雷锋相同,做了功德有不留名”)
详细的发动进程论坛里有,想了解的能够去细看。
好了,上图:

(原文件名:MDK-s.JPG)
看到是不很多,都晕了,渐渐来看:
重要的来看这些缩写:
这几个是代表Flash容量的
ld Low-density 小容量 16-32K
md Medium-density 中容量 64-128K
hd High-density 大容量 256-512K
xl 超大容量 512-1024K
这些都是根本型的,包含STM32F101xx, STM32F102xx 和 STM32F103xx
然后
vlvalue line devices 超值型系列 我们记住:这个只要STM32F100xx,也便是说只要是vl那一定是STM32F100的发动文件,其他的不予考虑
下面还有个特别的:
clConnectivity line devices 互联型 有STM32F105xx和STM32F107xx
差异完了,我想你大约也知道什么样的片子对应什么发动文件了吧,假如还有点模糊,没关系,下面来举个比如:
如:STM32F103VC
首要你要知道它的容量,这儿IDE下面器材选型

(原文件名:MDK opt.JPG)
还有这儿,数据手册

(原文件名:database 103vc.JPG)
都能够知道它的容量,看你习气,我人懒,经常用第一种方法
知道容量了之后,由于它不归于超值型STM32F100xx系列,也不归于互联型的STM32F105xx和STM32F107xx,一切我想你知道该怎样办了吧:

(原文件名:s.JPG)
工程下面如是增加
最终你能够翻开这个.s看一下,这儿注释得也很清晰

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/272701.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部