由于网络上大多数Keil开发环境建立的教程都太过陈旧,今天重新写下STM32F103系列的Keil环境搭建以及新建一个工程样例,以后都可以用此来做其他工程的蓝本。
一、下载并安装MDK
首先在keil官网 http://www.keil.com/ 下载最新版的MDK-ARM, 我这里下载的版本是MDK5.16a,下载后并安装好
二、打开Keil5并下载好所需PACK包
打开Keil5后会显示空界面
这时候在工具栏可以看到一个Pack Installer,这里开发STM32所需的Pack包都可以在这里下载,打开后界面如下
这时候我们点击Check for Updates后会刷新出新更多可下载的资源,在Device一栏下找到ST公司的设备并点击它
这时候右边Packs会出现很多系列芯片的DFP,选择你需要的,我这里选的是F1XX系列的并点击Install,安装完成后便可以开始新建样例工程了。
三、新建工程
关闭Pack Installer回到Keil5主界面,在菜单栏点击Project->New uVision Project
填写好工程名称并选择保存路径确认后开始选择所需芯片,这里我选择的是STM32F103C8,点击OK
这里我们只选择基础的功能,CMSIS->CORE和Device->Startup,点击复选框变绿后点击下面的OK,这里出现一个小bug,我的鼠标无法点击到OK,所以我直接按了回车
接下来我们点击工具栏中Manage Project Items重新管理工程文件
删除原先的工程名,重新新建一个工程名,这里名字我取STM32F103Demo
再管理Groups组的,分别新建两个Group,USER用来存放用户文件和FWLIB用来存放STM32F1XX的标准库,同时也要在新建的工程目录下新建这两个文件夹(Keil不会自动建立)
再将下载的STM32F1XX标准库中的inc和src文件复制到FWLIB下
这时候我们返回到Keil5界面,选择FWLIB并点击Add Files,将FWLIB->src中的.c文件都加载进去,点击一次Add就好
加载后点击Close
选择USER同理,先复制这些文件进USER文件夹,并新建一个main.c文件
再将所有.c文件加载进工程
这样点击OK,文件配置就弄好了,接下来再配置开发环境。
四、配置环境
首先选择Options for target
选择Output选项并将Creat HEX File复选框的勾打上,再选择C/C++选项,在Define栏中填写
USE_STDPERIPH_DRIVER,STM32F10X_MD
`意思是使用ST标准库,声明芯片容量是中等,若有其他需求可以搜索查看网上说明
在Include Path一栏中点击右边的更多按钮,新建一个路径,将我们所有包含.h文件的文件夹都要加载进去
这里我们主要涉及FWLIB->inc和USER两个文件路径,若有其他的.h文件也要加载进去,不然编译器会找不到.h文件
由于手头没有仿真器,这块以后介绍,接着选择Utilities选项并点击Setting按钮
这里我们如下选择:
Download Function:定义了Flash烧写的时候进行的操作。
Erase Full Chip:前面三项要选一,烧写程序之前擦除整个Flash存储器。
Erase Sectors:烧写程序之前擦除程序要使用的扇区。
Do not Erase:不进行擦除操作
Program:使用当前uVision工程的程序烧写ROM。
Verify:验证Flash ROM的内容和当前工程中的程序一致。
Reset and Run:在烧写和验证完成之后复位开发板并且运行程序。
RAM for Algorithm:指定用于烧写程序的RAM区域,通常是微控制器上的一段片上空间。
Start:起始地址。
Size:大小。