背景
- 芯片:STM32F103C8T6核心板
- 开发平台:IAR
安装IAR
官方下载地址:https://www.iar.com/iar-embedded-workbench/#!?device=STM32F103C8&architecture=ARM
安装教程网上资料很多,此处不再赘述。
获取STM32F103X固件库
搭建基础环境
创建Project
- 新建Workspace
File -> New Workspace - 新建Project
Project -> Create New Project
- 保存Workspace
File -> Save Workspace
添加固件库
本节参考:我要自学网-STM32单片机嵌入式实战教程 第二章
按照下表复制固件库
固件库路径 | 工程路径 | 备注 |
---|---|---|
STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar\ | STM32F10X Template\CMSIS\Startup | Cortex-M3 内核相关启动代码 |
CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.h 和 system_stm32f10x.c 和stm32f10x.h | STM32F10X Template\CMSIS | STM32 系统配置代码 |
STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver\inc文件夹和src 文件夹 | STM32F10X Template\FWLIB | STM32 外设驱动代码 |
STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template\stm32f10x_conf.h 和stm32f10x_it.c | STM32F10X Template\USER | STM32 中断管理代码 |
STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template\EWARM\stm32f10x_flash.icf 和stm32f10x_flash_extsram.icf 和stm32f10x_nor.icf 和stm32f10x_ram.icf | STM32F10X Template\ | 程序内存分布代码 |
Tips
如果目标目录不存在,则进行创建
IAR配置
编译头文件路径
右击工程名 -> Options -> C/C++ Compiler -> Preprocessor
在"Additional include directories:"中添加
$PROJ_DIR$\
$PROJ_DIR$\CMSIS\
$PROJ_DIR$\FWLIB\inc\
$PROJ_DIR$\USER\
预定义符号
右击工程名 -> Options -> C/C++ Compiler -> Preprocessor
在"Defined symbols:"中添加
STM32F10X_MD
USE_STDPERIPH_DRIVER
配置芯片
(1) 右击工程名 -> Options -> General Options -> Target -> Device
选择ST -> STM32F1 -> STM32F103 -> STM32F103C8
(2) 右击工程名 -> Options -> General Options -> Library Configuration
在CMSIS中选择Use CMSIS
配置Linker
右击工程名 -> Options -> Linker -> Config
在Linker configuration file中,复选Override default,路径定位到stm32f10x_flash.icf
添加main.c
在USER文件夹中添加main.c文件,并输入如下内容
#include "stm32f10x.h"
#include "stm32f10x_gpio.h"
int main()
{
GPIO_SetBits(GPIOA, 0);
return 0;
}
编译
点击Project -> Make
如果无错误则说明环境搭建成功。