Windows环境下的STM32开发环境搭建(Keil MDK-ARM简介及安装 包含missing compiler version 5的解决方法)
路径中不要有中文,不管哪个软件
1. Keil MDK-ARM简介及安装
1.1 Keil MDK-ARM 简介
Keil MDK,也称MDK-ARM,Realview MDK (Microcontroller Development Kit)等。目前Keil MDK 由三家国内代理商提供技术支持和相关服务。
MDK-ARM软件为基于Cortex-M、Cortex-R4、ARM7、ARM9处理器设备提供了一个完整的开发环境。 MDK-ARM专为微控制器应用而设计,不仅易学易用,而且功能强大,能够满足大多数苛刻的嵌入式应用。
MDK-ARM有四个可用版本,分别是MDK-Lite、MDK-Basic、MDK-Standard、 MDK-Professional。所有版本均提供一个完善的C / C++开发环境,其中MDK-Professional还包含大量的中间库
1.2 Keil MDK-ARM 获取与安装
官网可以下载最新版本的软件,安装比较简单就不赘述了。
安装完成后会自动下载DFP包,等待下载完成即可
进入软件后,在File->License Management,根据CID,输入对应New License ID Code可以进行注册,不注册也能用,就是有限制
2. 安装ST_LINK烧写工具
ST_LINK 是 STM32 芯片的仿真器,这里介绍烧写工具的安装,通过这个软件操作ST_LINK 将.hex 文件烧写到芯片上。此软件用于为 M0 烧写 bootloader 文件。我们在 keil中编译好的代码可以使用它们本身进行下载。
官网上可以下载最新版本的软件
3. STM32CubeMX
3.1 简介
直观的选择STM32微控制器
微控制器图形化配置
自动处理引脚冲突
动态设置确定的时钟树
可以动态确定参数设置的外围和中间件模式和初始化
功耗预测
C代码工程生成器覆盖了STM32微控制器初始化编译软件,如IAR,KEIL,GCC可以独立使用,作为Eclipse插件使用
3.2 下载
首先要下载Java,然后下载STM32CubeMX,下载完成后打开软件
然后选择需要的STM32Fx Series,这里也只是个例子,然后Install Now就完成设置了
3.3 基本使用
首先新建一个project,会显示下图,在红框处输入需要的STM32的型号
以STM32F407IG为例
例子中新建个空项目
在Project Manager中输入Project Name和Project Location
Toolchain/IDE选择MDK-ARM,与对应的Version
Code Generator中勾选Generate peripheral initialization as a pair of ‘.c/.h’ files per peripheral
最后点击Generate Code
我们点击Open Project就能打开Keil
4. Missing Compiler Version 5
最新版本的Keil不预装V5编译器(compiler version 5),在我build需要v5的项目时报以下这个错
Build started: Project: Project
*** Target 'STM3210C_EVAL' uses ARM-Compiler 'Default Compiler Version 5' which is not available.
*** Please review the installed ARM Compiler Versions:
'Manage Project Items - Folders/Extensions' to manage ARM Compiler Versions.
'Options for Target - Target' to select an ARM Compiler Version for the target.
*** Build aborted.
Build Time Elapsed: 00:00:00
1
2
3
4
5
6
7
解决方案1:这个时候我们可以按照下面的操作来解决这个问题,首先我们先看ARM Compiler里有没有V5有的话直接选择就可以解决问题
解决方案2:如果没有就按照下面的操作
选择Keil_v5/ARM/ARMCC这个文件夹
如果显示成这样,回过头来ARM Compiler选择V5之后就解决问题了。
解决方案3:如果还是不行就需要下载编译器了
官网可以下载Arm Compiler 5。选择下图这个版本
随后安装这个软件就好了,需要注意的是把这个Compiler安装到Keil_v5/ARM这个文件夹下,方便管理,最后和之前的解决方法一样