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

2015-10-5 15:02 2360 20 20 分类: 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

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

 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
20
关闭 站长推荐上一条 /3 下一条