原创 【博客大赛】STM32F1之IAR环境搭建

2015-10-5 15:02 1611 15 15 分类: MCU/ 嵌入式 文集: STM32F1学习笔记

软件环境:IAR Embedded Workbench for ARM v7.4 + ST官方库 v3.5

硬件环境:STM32F103C8开发板

仿真器  ST-Link

 

这里以LED流水灯为例。

一、准备本地目录。

1. 在本地硬盘建立LED文件夹,在LED文件夹中建立CMSISFWlibProject三个子文件夹,在CMSIS文件夹下再建立startup子文件夹,在Project文件夹下再建立EWRAM子文件夹,如图1所示(请先注意红圈中的内容,其他暂时忽略)。之所以这样,是受ST官方例程影响。

20151005145704322001.jpg

1

2. ST官方库里面\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver目录下的两个文件夹incsrc复制到FWlib文件夹中,如图1所示。

这些都是官方的芯片外设驱动相关的源码,其中头文件在inc中。

3.ST官方库里面\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar目录中的文件复制到CMSIS下的startup文件夹中。

启动文件所在目录,主要用于初始化SPPC及设置中断向量表。

4. 1)将ST官方库里面\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport目录下的core_cm3.ccore_cm3.h文件复制到CMSIS文件夹中。

   2)将ST官方库里面\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x目录下stm32f10x.hsystem_stm32f10x.csystem_stm32f10x.h文件复制到CMSIS文件夹中。

   3)将IAR安装目录下(默认为C:\Program Files (x86)\IAR Systems\Embedded Workbench 7.2\arm\CMSIS\Includecore_cmFunc.hcore_cmInstr.h文件复制到CMSIS文件夹中。

这些都是ARM公司的与芯片生产厂商无关的Cortex-M内核相关的硬件抽象层文件。

5.ST官方库里面\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template中的main.cstm32f10x_conf.hstm32f10x_it.cstm32f10x_it.h复制到Project文件夹中。

项目的主文件、中断处理文件等。

二、设置IAR

1.启动IAREWRAM),新建workspace,如图2

20151005145715611002.jpg

2

2.新建项目,点击project菜单->Creat New Project,弹出如图3所示对话框,选择空项目(Empty Project),OK.

生成的项目文件保存在前文所述的Project文件夹中。

20151005145722423003.png

3

3.在左侧的项目结构中,通过Add Group的方式添加FWlibStartupSystemFileUser四个Group. 因为本例程是以LED为例,在FWlib中添加FWlib文件夹中的stm32f10x_gpio.cstm32f10x_rcc.c;因为硬件是STM32F103C8,属于中密度芯片,所以在startup中添加\CMSIS\startup文件夹中的startup_stm32f10x_md.s;在SystemFile中添加CMSIS文件夹中的core_cm3.csystem_stm32f10x.c;在User中添加main.cstm32f10x_it.c,因为本例程中没有使用中断,所以stm32f10x_it.c也可以不用包含进来,当然,考虑到以后使用这个例程作为模板,所以还是将该文件包含在里面。

4. project->option或通过Alt+F7,打开本项目的设置选项。

1)在General里面,选择芯片(本例程是STM32F103C8),如图4所示。

20151005145728345004.jpg

4

2)在C/C++ Complier中的Preprocessor中,添加头文件的目录,即前文所述的\FWlib\incCMSISProject文件夹。另外,还要在Define Sysbols中添加如下两行:

USE_STDPERIPH_DRIVER

STM32F10X_MD

20151005145736834005.png

5

3)在Output Converter中进行如图6设置。

20151005145742317006.png

6

4)在Debugger中将仿真器设置为ST-Link,如图7所示;另外在Download中勾选flash选项目,如图8所示。

20151005145748319007.png

7

20151005145756979008.png

8

三、新建LED.hLED.c文件,并添加到User中。编写相关代码,最后进行Rebuild All,如图9所示。

20151005145803898009.png

9

如果程序编写没有问题,最后提示是没有错误的。

四、连接好硬件,点击图10所示的下载按钮,下载程序到芯片中。

20151005145810216010.jpg

10

本例程中在附件中,供参考。

 

文章评论0条评论)

登录后参与讨论
相关推荐阅读
飞言走笔 2017-01-06 21:56
2017,新的博客旅程
EDNChina 改版终于成功了!祝贺! 2017年,开始新的旅程~ ...
飞言走笔 2016-06-01 10:17
【博客大赛】《白鹿原》读后
《白鹿原》这本书已经买了很久,多次以来,都是只翻看几页,顶多几章就放下了,觉得这是一个大部头,得有足够的时间才行。前几天陈忠实先生去世的消息传来,让我很震惊和惭愧。 一口气读完这本书,畅快淋漓,又意...
飞言走笔 2016-03-26 16:42
【博客大赛】《毛斯朝》读后
这本书最早是在凤凰卫视曾子墨主持的一期关于沈志华先生的《世纪大讲堂》节目中知晓的。但是一直拖到今天才读完。 说实话,书的主要内容与当前官方的宣传口径有很多不一致的地方,而沈先生作为中国掌握苏联档...
飞言走笔 2016-03-08 13:46
【博客大赛】蓝牙4.0低功耗技术及其认证要求
详见附件 ...
飞言走笔 2016-02-02 14:20
【转】蓝牙4.0协议官方手册(一)——通用属性配置文件
转自:http://blog.csdn.net/jinzhichaoshuiping/article/details/43370009 通用属性配置文件 (GATT)——该说明书定义了通用属性配置...
飞言走笔 2016-01-31 23:24
【博客大赛】脑洞大开、三观重塑——《人类简史》读后
终于读完了《人类简史》,没有把这本书拖到二月份,这也是2016年读完的第一本书。之前也有所耳闻,但是没有太在意,倒是罗胖子的跨年演讲上偶然提到,不知怎么就勾起了阅读此书的欲望。 本文的标题用了“脑洞...
我要评论
0
15
1
2
3
4
5
6
7
8
9
0
关闭 热点推荐上一条 /4 下一条