注:本文仅依照加粗字体和图片可快速新建 Keil MDK 5 工程
由于文章没有细分步骤,标记点用于方便阅读。
🔺 标记点 ①
打开 Keil MDK 5,点击Project
> New μVision Project
,如图:
🔺 标记点 ②
选择一个路径,新建一个TEST
文件夹,在TEST
文件夹里新建USER
文件夹,将工程名字设为test
,保存在USER
文件夹里面,如图:
🔺 标记点 ③
点击保存后会弹出对话框,选择自己要使用的芯片型号,如图:
此处我选择
STM32F103RC
,点击 OK
!!注意: 一定要安装对应的器件 pack 才会显示这些内容
🔺 标记点 ④
弹出Manage Run-Time Environment
对话框,这是 Keil MDK 5 新增的一个功能,在这个界面,我们可以添加自己需要的组件,从而方便构建开发环境,这里我们不作介绍,点击Cancel
即可,如图:
🔺 标记点 ⑤
到这里,我们还只是建了一个框架,还需要添加启动代码,以及.c
文件等
启动代码是一段和硬件相关的汇编代码,是必不可少的!这代码主要作用如下:
- 堆栈(SP)的初始化
- 初始化程序计数器(PC)
- 设置向量表异常事件的入口地址
- 调用 main 函数
ST 公司提供了 3 个启动文件给我们,分别用于不同容量的 STM32 芯片,这三个文件是:
- startup_stm32f10x_ld.s
- startup_stm32f10x_md.s
- startup_stm32f10x_hd.s
其中,ld.s
适用于小容量产品,md.s
适用于中等容量产品,hd.s
适用于大容量产品,这里的容量是指FLASH
的容量大小
判断方法如下:
- 小容量:FLASH ≤ 32K
- 中容量:64K ≤ FLASH ≤ 128K
- 大容量:256K ≤ FLASH
根据自己使用到的开发板的FLASH
容量选择启动文件,我们可以在【正点原子官方论坛】下载(点击进入)
【正点原子】官方给出的启动文件作了一些修改:屏蔽了复位中断服务函数(Reset_Handler