0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Keil(MDK-ARM)系列教程(一) _新建软件工程详细过程

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 2020-03-24 10:28 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Ⅰ、写在前面

本文使用目前(2016年11月)最新版本Keil(MDK-ARM)V5.21a开发环境、以STM32处理器为例给大家讲述新建一个软件工程的详细过程。

Keil(MDK-ARM)V4和V5新建软件工程基本一样,本文也适合与V4版本的新建软件工程。

本文使用的处理器是ST公司的STM32F1系列芯片,ST公司其它系列(如:F4等)、其它公司(如:TI)新建软件工程的过程也是一样。

为方便广大STM32学习者,我将在下面把STM32F0 - F4各个系列芯片新建好的Demo软件工程、相关的工具和文档提供给大家下载。

本文内容已经整理成PDF文件,提供给大家下载:

http://pan.baidu.com/s/1nuJ0RDR

Ⅱ、本文要点

从本文标题可以看得出,重点是新建软件工程的过程。但是作为ARM开发的软件工程,一般都会包含部分源代码(如:库),意思就是说需要准备一些工程所包含的源代码文件。

本文基于STM32F1系列芯片为例来讲述(其他系列芯片类似),将简单描述一下准备STM32F1标准外设库、Demo源代码(LED闪烁例程)。

准备工作之后新建软件工程才是本文是要点,新建软件工程的过程主要针对初学者,大部分工程的配置就选择默认,如要查看更多关于软件工程的详细配置可以进入博客或关注微信公众号查看。

Ⅲ、准备工作

俗话说“磨刀不误砍柴工”,准备工作虽然与题目关系不是很大,但也是本文的重点,做好了准备工作,后面新建软件工程的工作就很容易实现了。

1.安装Keil(MDK-ARM)软件工具

本文必备工具,这里不多说,详情请看我的另一篇文章【Keil(MDK-ARM)介绍、下载、安装与注册】:

博客:

http://blog.csdn.net/ybhuangfugui/article/details/51501781

PDF:http://pan.baidu.com/s/1nuJ0RDR

2.STM32标准外设库下载

官网下载链接(需要ST账号登陆):

http://www.st.com/content/st_com/en/products/embedded-software/mcus-embedded-software/stm32-embedded-software.html?querycriteria=productId=SC961

根据芯片型号下载对应的标准外设库(如芯片为STM32F103ZE,则下载对应的STM32F10x_StdPeriph_Lib),如下图:

也可以到我百度网盘下载(和官网一样):

http://pan.baidu.com/s/1qYbBKMK

3.整理工程文件夹

这一小节的内容可根据自己习惯来整理,我整理的文件及文件夹结构是按照常规的整理方式。你如果觉得合理,可以引用;如果觉得不习惯这个结构方式,可以自己整理。

首先建立一个存放工程文件的文件夹:STM32F103ZE(Keil)_Demo

A.提取ST标准外设库文件

ST官网下载的标准外设库里面有很多源代码文件,但我们只需要使用部分文件。因此,需要提取使用的文件及文件夹到我们的工程中。

解压“STM32F10x_StdPeriph_Lib”,可以看到在主目录下面有四个文件夹:

_htmresc:图片文件夹(不提取)

Libraries:库文件夹(提取大部分)

Project: 示例工程(提取少部分)

Utilities: 公共代码、评估板代码(不提取)

我们使用标准外设库主要提取的文件是Libraries下面的文件,但有些文件及文件夹也是多余的。因此,我将多余的文件及文件夹去掉,保留需要的文件和文件夹。

B.新建文件和文件夹

除了标准外设库文件之外,我们需要建立存放自己代码的文件和文件夹。我这里主要需要新建三个文件夹:

App: 应用部分代码

Bsp: 底层部分代码

Doc: 说明文档

在自己新建的文件夹下面还需要新建自己的文件,文件里面添加源代码,我们提供的Demo工程,实现的功能比较简单,就是一个LED闪烁。这里不描述,具体可以在最后下载查看。

上面两个步骤完成之后,我们就可以看到在“STM32F103ZE(Keil)_Demo”下面整理的文件夹:

至此,准备工作算完成了,上面提取的文件、新建的文件里面具体的内容请下载Demo工程查看。

Ⅳ、新建软件工程

新建一个简单、基础的软件工程大概需要有三个步骤:建立工程、添加文件和配置工程。

上面的准备工作做好之后,就可新建自己的软件工程了,下面将一步一步讲述从零开始新建一个软件工程的详细过程。

1.建立工程

建立工程的步骤是基础,也比较简单。

A.打开软件,新建立工程(Project -> New uVision Project)

B.选择路径,保存名称

C.选择芯片型号

D.基础工程

一个基础的工程就完成了,但需要使用还不够,还需要下面的步骤。

2.添加文件

准确的来说,应该是添加组(文件夹)和添加文件。直接的说,就是将你自己的源代码(前面提取的库、新建的文件等)添加到工程中。

这里的工程项目管理可根据自己的想法来定义(类似于自己分类、命名文件夹和文件),我这里按照常规的方式进行管理项目。

·

·

一步一步添加,直到最后完成

·

·

3.配置工程

配置工程对于初学者来说,大部分内容只需要默认即可,这里只讲述几个常见的配置,能满足基本的功能。更多配置可进入我微信公众号或博客查看。

A.点击“工程目标选项”进入配置(或Project -> Options for Target)

B.输出Hex文件

很多朋友初学的朋友都会问怎么输出Hex(可直接下载的文件),只需要勾选上【Project -> Options for Target -> Output】“Create HEX File”即可。

C.C/C++配置

这个选项的配置参数比较多,对于大型项目来说比较重要,但对于初学者来说,只需要简单配置两项就行。

第一处配置---预定义:

【这里只针对于STM32F103大容量芯片,其他芯片视情况而定】

预定义STM32F10X_HD,有些工程还预定义USE_STDPERIPH_DRIVER。由于都是使用“标准外设库”,我个人习惯把USE_STDPERIPH_DRIVER,定义在stm32f10x.h文件里面,所以在这里就看不到我定义的这一项了。

第二处配置---包含路径:

由于我们前面工程中有很多文件夹,因此需要添加对应的路径,这样编译器才能找得到。

·

·

一步一步添加,直到最后完成

·

·

D.选择下载调试工具

这个选项根据自己的下载调试器来选择(比如:ST-Link)

E.下载复位并运行设置

有些初学的朋友说“为什么我下载程序之后,需要按一下复位键才能运行?”,只需要在工程中勾选上“Reset and Run”就可实现,下载完程序马上运行了。

至此,一个新建立的工程就算完成了(当然,我新建的文件是添加了正确的源代码),只需要编译,接上下载器就可以下载运行了。

Ⅴ、下载

为方便广大STM32学习者,我将常见的STM32“Demo软件工程”已经建好,,里面包含IAR for ARM新建的工程供大家下载。【如果没有你对应的芯片型号,你又想得到,可以给我留言“STM32FXXXxxDemo 工程”。我会做一个统计,如果某一型号芯片Demo工程有多人需要,我会考虑给你们写的。】

STM32F0工程模板:

http://pan.baidu.com/s/1pKSkSxt

STM32F1工程模板:

http://pan.baidu.com/s/1c1AWupM

STM32F2工程模板:

http://pan.baidu.com/s/1o8yGWg6

STM32F3工程模板:

http://pan.baidu.com/s/1boVXh2f

STM32F4工程模板:

http://pan.baidu.com/s/1qYzYMuS

注意:由于许多网盘近年来受到影响都相继停止服务或关闭了,如果网盘链接失效,请到官网下载,也可以关注微信公众号查看更新链接,或微信联系作者。

Ⅵ、说明

上面新建软件工程主要是针对初学者,写的比较基础的。若要了解更多关于Keil的使用教程,可以进入我微信公众号或博客查看。

以上内容仅供参考,若有不对之处,敬请谅解。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    135

    文章

    9499

    浏览量

    388550
  • keil
    +关注

    关注

    69

    文章

    1224

    浏览量

    171771
  • MDK
    MDK
    +关注

    关注

    4

    文章

    211

    浏览量

    33455
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    开源鸿蒙技术大会2025丨AI软件工程分论坛:智能创新,赋能开源鸿蒙软件工程

    师生深度参与技术交流联动。论坛由华为终端软件工程与IT装备部孙为国与开源鸿蒙AI软件工程SIG副组长王意明联合出品。此次论坛的成功举办标志着开源鸿蒙AI软件工程从技术探索步入规模落地阶段,预计2025年底将赋能10万+开发者。
    的头像 发表于 11-20 17:32 589次阅读
    开源鸿蒙技术大会2025丨AI<b class='flag-5'>软件工程</b>分论坛:智能创新,赋能开源鸿蒙<b class='flag-5'>软件工程</b>

    CW32 MCU用什么IDE开发?

    推荐使用IAR Embedded Workbench for ARMKeil μVision for ARM等IDE开发CW32 MCU应用,其中新版本IAR EWARM直接支持CW32 MCU,
    发表于 11-12 07:52

    env创建的keil5工程丢失了c文件怎么解决?

    用env创建mdk5工程,用keil打开mdk5工程,里面缺少了大部分c文件
    发表于 09-23 06:19

    使用RASC生成Keil工程

    手动新建个名为“Workspace_Keil”的文件夹,并将该文件夹作为我们的工作空间,我们的所有Keil工程都会放在这个文件夹里面。值得
    的头像 发表于 05-15 14:46 869次阅读
    使用RASC生成<b class='flag-5'>Keil</b><b class='flag-5'>工程</b>

    Keil MDK到IAR EWARM:通过工程迁移实现项目资产的更好管理

    对于需要统开发环境或涉及多核架构(如Cortex-A/R)的项目,越来越多的用户选择从Keil MDK迁移到IAR EWARM。这就会面临着需要将之前的Keil
    的头像 发表于 05-08 09:03 994次阅读
    从<b class='flag-5'>Keil</b> <b class='flag-5'>MDK</b>到IAR EWARM:通过<b class='flag-5'>工程</b>迁移实现项目资产的更好管理

    【RA-Eco-RA4M2开发板评测】RA-Eco-RA4M2 Keil 开发环境搭建

    MDK for ARM版本有Keil 4和Keil 5:使用Keil 5建议安装5.38以上版本。笔者的
    发表于 04-27 22:54

    如何成为名嵌入式软件工程师?

    如何成为名嵌入式软件工程师? 01明确岗位的角色与定位 嵌入式软件工程师主要负责开发运行在特定硬件平台上的软件,这些软件通常与硬件紧密集
    发表于 04-15 14:37

    Keil uVision 5安装包下载,详细安装教程~

    for ARM实现联调(目录包含*.mcp原始工程文件)。 结束语 至此,Keil uVision 5的完整安装流程已顺利完成。按照本教程逐步操作即可完成软件部署与配置。 若本教程对
    发表于 03-15 12:10

    嵌入式软件工程师就业好不好?

    嵌入式软件工程师就业好不好?会不会越老越吃香?今天起来看看。 首先看下市场需求。 随着物联网、人工智能、5G等前沿技术的快速发展,嵌入式系统的应用领域不断扩大,从智能家居、汽车电子到工业自动化
    发表于 02-20 10:19

    Testin云测获智能化软件工程工作组优秀单位荣誉

    随着人工智能技术的深度应用,大模型等AI技术在推动软件行业智能化进程中的重要性日益凸显。软件工程,作为大模型、智能体等AI技术落地应用的前沿领域,正加速推进智能化转型。在这场变革中,企业、科研机构以及众多行业专家纷纷投身其中,共同探索智能化
    的头像 发表于 01-21 10:46 628次阅读

    【RA-Eco-RA4E2-64PIN-V1.0开发板试用】+KEIL+RASC 开发环境搭建

    、安装keil编译环境 Keil([MDK-ARM] 的下载页面为[https://www.keil.com/download/product/]
    发表于 01-15 21:21

    使用stm32cubeMX无法生成mdk工程文件?

    几年前使用过cubemx,可以生成keil工程文件。最近有个工程使用cubemx创建,结果只能生成stm32cubemx类型的文件,无法生成mdk
    发表于 01-04 20:03

    【敏矽微ME32G070开发板免费体验】新建工程MDK

    非常丰富,但是依赖的文件与工程文件在同个文件夹下,移到比较麻烦,所以自己新建工程MDK
    发表于 12-21 22:24

    【RA-Eco-RA4E2-64PIN-V1.0开发板试用】+初次见面+MDK生成代码+点灯

    Windows 安装程序 4、新建keil MDK工程 导入历程中的工程文件,转换成mdk
    发表于 12-15 21:55

    【RA-Eco-RA4E2-64PIN-V1.0开发板试用】MDK新建工程

    安装。 2.RASC 软件安装完成之后,还需要将 RASC 软件集成到 Keil 软件上面 3.新建工程 使用 RASC 自动生成
    发表于 12-14 18:23