嵌入式环境搭建(一):Keil MDK5 安装流程及 DFP 器件包配置实战

目录

  • 前言
  • [一、Keil MDK 介绍](#一、Keil MDK 介绍)
    • [1.1 我们要装的是什么?](#1.1 我们要装的是什么?)
    • [1.2 下载与安装](#1.2 下载与安装)
      • [1.2.1 获取安装包](#1.2.1 获取安装包)
      • [1.2.2 开始安装](#1.2.2 开始安装)
  • [二、驱动与 Pack Installer](#二、驱动与 Pack Installer)
    • [2.1 遇到驱动弹窗?](#2.1 遇到驱动弹窗?)
    • [2.2 Pack Installer 是什么?](#2.2 Pack Installer 是什么?)
  • [三、配置 STM32 芯片包(以 F103 为例)](#三、配置 STM32 芯片包(以 F103 为例))
  • 四、总结与检查
  • 结语

🎬 云泽Q个人主页
🔥 专栏传送入口 : 《C语言》《数据结构》《C++》《Linux》《蓝桥杯系列》《笔试算法》《AI赋能》《STM32

⛺️遇见安然遇见你,不负代码不负卿~


前言

大家好啊,我是云泽Q,欢迎阅读我的文章,一名热爱计算机技术的在校大学生,喜欢在课余时间做一些计算机技术的总结性文章,希望我的文章能为你解答困惑~

一、Keil MDK 介绍

下面要按照的软件可以说是嵌入式开发里的"老大哥"了------Keil MDK

虽然它的界面很复古,写代码的体验(个人感觉特别差)也远不如现在的 VS Code 那么爽(以后我们会教大家怎么用 VS Code 配合它),但它是目前企业里用得最多的,资料也最全,就是老资历。

接下来,我会结合官方文档和实际操作,手把手带大家把环境搭起来。

1.1 我们要装的是什么?

很多兄弟会好奇,Keil 和 MDK 是一回事吗?" 这里我先给大家捋一捋概念

  1. Keil 是个公司名

    Keil 原本是一家独立的公司,但在 2005年ARM 公司收购了。大家还记得 ARM 吗?我们学的 STM32,它的 CPU 内核(Cortex-M)就是 ARM 设计的。所以现在的 Keil,其实是 ARM 的子公司,专门做开发工具。

  2. MDK 是个工具包

    MDK 的全称是 Microcontroller Development Kit,翻译过来就是"微控制器开发工具包"。

    • 微控制器:就是 MCU,也就是我们要开发的单片机。
    • 开发工具包:注意这个词,它指的是一堆工具的集合。它里面包含了代码编辑器、编译器、调试器等等。

结论来了: 我们装的这个软件,本质上是一个集成开发环境(IDE) 。以后大家听到 Keil MDKMDK-ARMKeil for ARM ,甚至直接叫 Keil 5,指的都是同一个东西

虽然 Keil 5 是主流,但现在也有 Keil 6 了。不过我的文章目前还是基于 Keil 5(比如 v5.42、v5.43 版本)来讲,因为它的稳定性最好,教程也最多。

1.2 下载与安装

好了,概念清楚了,咱们开始安装。

1.2.1 获取安装包

keil分两个版本,一个是专业版,另一个是社区版,社区版是免费的,能力足够,我们下载社区版即可

大家可以去 Keil 的官网下载社区版(Community Edition)

点击上方Download就会跳转到下面的页面,这个页面只会在第一次下载的时候遇到,我们随便往里面填一些信息即可

提交后就到了这个页面,点击这个高亮的MDK543A.EXE就可以下载了

1.2.2 开始安装

下载好之后,双击安装包,一路 Next,但在以下几个界面,请大家务必仔细看

第一步:同意协议

勾选 I agree to all the terms...,然后点 Next。这步没啥说的。

第二步:选择安装路径

这里有两个路径要填:

  • Core:这是软件主程序(工具集,IDE)的路径。
  • Pack:由于我们未来会在MCU上做片上开发,代码要烧写到芯片内部,所以和硬件有关,Keil就需要从官方的途径中拉取一些芯片包(各种MCU型号),其中所包含的各种源代码信息就会存在Pack所指定的路径下
  1. 路径里绝对不能有中文! 比如 D:\软件\Keil 这种绝对不行,必须全是英文,像 D:\Software\Keil_v5
  2. **不要装在 C ** 除非你 C 盘很大,否则以后文件多了会卡。
  3. 不要和 Keil 4 混装 如果你电脑里还有以前学 51 单片机装的 Keil 4(C51),一定要把它们分开放在不同的文件夹里,否则会冲突。

你也可以参考我的路径方式来安装

路径确定好之后点击next

第三步:填写用户信息

随便填!Name、Company、Email 随便写,只要格式对就行,不用填真的。填完点 Next。

第四步:等待安装完成

进度条走完点 Finish。

弹出这个页面就是在拉去相关芯片包,我们不用管,让它慢慢安装即可

二、驱动与 Pack Installer

安装完主程序还没结束,这时候通常会弹出两个东西,大家别急着关。

2.1 遇到驱动弹窗?

安装过程中或结束后,Windows 可能会 弹出一个安全中心窗口,问你要不要安装 KEIL - Tools By ARM 的驱动。

  • 操作: 勾选"始终信任",然后点击 "安装"
  • 为什么? 这个驱动是用来让你的电脑识别 ST-Link 或 J-Link 仿真器的。如果不装,到时候你程序写好了也烧录不进芯片里。

2.2 Pack Installer 是什么?

有的人安装完成后点击finish之后有可能会弹出这样一个网页,不用在意,关了就好

装完后,有可能会自动弹出一个叫 Pack Installer 的界面(Keil5内部的一个内置软件,我装的时候没有弹出,下面单独说没有弹出的解决方法)。很多兄弟一看全是英文就慌了,或者觉得它加载慢直接关了。千万别关!

  • 它的作用: MCU 的品类型号非常繁多,开发不同 MCU 的时候需要用到的软件组件也各不相同。

    Keil 官方帮我们把这些都收集好,通过 Pack Installer 帮我们从 Keil 的服务器上下载设备驱动程序、示例程序、中间件、库文件等。

    这是 Keil 软件安装完成或首次启动时的正常现象。Pack Installer 是 Keil5 (MDK5) 的在线组件和芯片包管理工具,用于下载各种芯片的 DFP(Device Family Pack,即器件支持包)。这些支持包包含了如 STM32、GD32 等芯片的核心固件库和启动文件。

  • 如果没有该页面或不小心关了咋办? 没关系,打开 Keil 软件,点击工具栏上那个绿色的方块图标,它还会弹出来的。

重要的是这个界面

如果右下角有读条的话,等它读完再进行接下来的步骤

三、配置 STM32 芯片包(以 F103 为例)

现在 Pack Installer 打开了,我们来下载要用的 STM32F103ZE系列 系列的支持包(我们文章后续使用的芯片型号是STM32F103ZET6)。

操作步骤:

  1. 搜索型号: 在左侧 Devices 栏的搜索框里,输入 STM32F103。若是搜索列表为空,则有可能是前面安装时从 Keil 官网 拉去芯片包的时候卡住了(缺少对应的芯片支持包(DFP)

    可以通过点击左上角绿色刷新按钮看一下右小角有没有重新读条,等它读条结束再搜索

  2. 展开系列: 找到 STM32F1 Series -> STM32F103

  3. 选择具体型号: 比如我们要用的是 STM32F103ZE(也就是我们开发板常用的 ZET6 芯片所属的系列),点击展开它。

  4. 点击安装: 在右侧列表里,你会看到 Keil::STM32F1xx_DFP,点击后面的灰色 Install 按钮。

等待右下角蓝色读条...

这时候它会从国外服务器下载文件,可能会有点卡,甚至不动,耐心等一会儿,这是正常的。等到进度条走完,显示绿色对勾,就说明安装成功了。

读条完成后就恢复到这个页面了

四、总结与检查

至此,我们的环境就彻底搭建完成了!

我们来检查一下:

  1. 打开你的安装目录(刚才设置的 Pack 路径),看看里面是不是多了一个 Keil.STM32F1xx_DFP 的文件夹?如果有,说明芯片包下成功了。

结语

相关推荐
亿道电子Emdoor9 小时前
【Aitium】PCB导出DXF文件出现eDuplicateRecordName报错
stm32·单片机·嵌入式硬件·altium
深圳市泰凌微电子1 天前
HK航顺 HK32F407RGT7替STM32F405RGT6 微控制器32位MCU
stm32·单片机·嵌入式硬件
lzqrzpt1 天前
LED驱动电源行业品牌格局与技术差异深度总结
python·单片机·嵌入式硬件
SteveSenna1 天前
直流减速电机 + STM32 控制接线方案
单片机·嵌入式硬件
云栖梦泽1 天前
Camera驱动开发与应用开发中的零拷贝与DMA
linux·驱动开发·嵌入式硬件
小心亦新1 天前
STM32学习16--定时器输出比较2直流电机
stm32·嵌入式硬件·学习
危桥带雨1 天前
Freertos——任务通知
stm32·单片机·嵌入式硬件·freertos
十月的皮皮1 天前
stm20260719-STM32F103RCT6_HAL库_三人抢答器
c语言·stm32·单片机·嵌入式硬件·stm32cubemx·hal库
HPT_Lt1 天前
告别传统二极管损耗!ZCC5050-1替代LM5050-1,冗余电源效率跃升新高度
嵌入式硬件