STM32开发工具介绍及使用详解

目录

2.1 认识MDK-ARM

2.2 MDK-ARM的安装及注册

2.2.2 芯片包的安装

2.2.3 MDK-ARM软件的注册

2.3 Keil软件的使用以及工程的建立

2.3.1 Keil软件的基本功能

2.3.2 Keil软件工程模板的创建

2.4 附录:



2.1 认识MDK-ARM

        Keil MDK-ARM是由美国Keil公司开发的(现已被ARM公司收购)一款集成开发环境(IDE),专门用于嵌入式系统开发。它支持多种微处理器架构和编程语言,包括ARM Cortex-M0、M3、M4等系列微控制器。

        Keil MDK-ARM提供了完整的项目管理、调试、性能优化和测试工具,并且集成了ARM编译器、调试器和IDE,使得开发者可以在一个环境中完成整个开发流程。此外,Keil MDK-ARM还提供了许多优秀的特性,如:

        1、支持多种编程语言:Keil MDK-ARM支持C、C++、Assembly等多种编程语言,可以满足不同开发者的需求。

        2、代码生成工具:Keil MDK-ARM自带了Code Generator,可以帮助开发者快速生成代码框架和驱动程序,提高开发效率。

        3、简单易用的调试器:Keil MDK-ARM自带了uVision Debugger,可以帮助开发者实时监测代码执行状态、内存使用情况等,提高调试效率。

        4、集成的版本控制:Keil MDK-ARM集成了Version Control System(VCS),可以帮助开发者更好地管理代码版本和变更记录。

        5、完善的文档和示例代码:Keil MDK-ARM提供了丰富的开发文档和示例代码,帮助开发者更快速地上手。

        总的来说,Keil MDK-ARM是一款功能强大的开发工具,适用于各种规模的项目和不同层次的开发人员。

2.2 MDK-ARM的安装及注册

        在编写代码开发STM32时需要先安装MDK软件,STM32常用开发软件是Keil,本流程中使用的是Keil_5.37版本,安装完成后可以在工具栏help中的about u Vision 选项卡中查看版本信息。如需要最新版软件可以通过官方网站(Keil Downloads)下载,这里提供Keil_5.37版本下载地址:(链接:百度网盘 请输入提取码 提取码:1234)

         首先自行从文档中提供的网盘链接下载Keil_5.37安装包,下载完成后打开文件夹就能够看到Keil_5.37安装包图标,如图:

2.2.1 MDK-ARM软件的安装

        安装MDK-ARM的步骤如下:

        (1)在下载的文件夹中右键单击MDK537.EXE,选择【以管理员身份运行】(如图2-1所示),完成后即会弹出安装界面(如图2-2所示)。

 图2-1 运行Keil_537

 △图2-2 安装启动界面

        (2)在图2-2中单击【Next >>】按钮,弹出安装【License Agreement】界面,如图2-3所示。

图2-3 【License Agreement】

        (3)在图2-3中勾选【I agree to all the terms of the preceding License Agreement】选项,然后单击【next >>】按钮,弹出选择安装路劲界面,这里我选择的是D:盘下的目录,也可以使用默认路径,注意在选择安装路径时尽量选择全英文路径,如图所示

        (4)在图2-4中分别单击Cor与Pack后面的【Browse】按钮更改安装路径,这里我两个项目使用的路径一致,完成后单击【Next >>】按钮,弹出【Customer Information】定制信息,按要求填写名称、公司名称、电子邮件等信息,如图2-5所示。

        (5)在图2-5中单击【Next >>】按钮,软件开始安装,弹出【Setup Status】对话框,如图2-6所示。

        (6)软件安装完成,在弹出的对话框中点击【Finis】按钮,如图2-6所示。

        (7)单击【Finis】完成按钮后,或弹出器件安装对话框,这里可以直接退出器件安装界面,用我提供的器件包安装即可,如图2-8所示。

图2-8 器件选择安装对话框

2.2.2 芯片包的安装

        安装好 MDK-ARM 软件之后,不能直接使用该软件来编译工程,这是因为每一种嵌入式处理器都有其对应的底层驱动,而芯片的安装包中就包含其中的驱动当软件安装完成时,并不会自行安装芯片包,由于芯片的种类很多,因此需要根据自己的需求来安装芯片的安装包。接下来介绍如何安装芯片包。

        方法一:进入芯片安装包的官网(https://www.keil.com/dd2/Pack/#/eula-container)下载对应得芯片安装包。

        方法二:使用我提供的网盘链接下载芯片安装包。

        (1)芯片安装包的获取(链接:百度网盘 请输入提取码 提取码:yx41)

        (2)通过网盘链接下载后,能够得到7个芯片包,STM32F103ZET6对应的是Keil.STM32F1xx_DFP.2.2.0.pack芯片包,如图2-9所示。

图2-9 网盘下载芯片包

        (3)安装F1系列芯片包,在如图2-9所示选中F1系列芯片包,鼠标双击直接打开安装界面,在弹出的对话框中选择【Next >>】按钮,如图2-10所示。

图2-10 芯片包安装启动界面

         (4)等待芯片包安装完成,如图2-11所示。

          (5)芯片包安装完成后点击【Finis】按钮结束F1系列芯片包的安装,如图2-11所示。

2.2.3 MDK-ARM软件的注册

        (1)获取 MDK-ARM 软件的注册程序(链接:百度网盘 请输入提取码提取码:eq1z)。

 通过百度网盘获取到注册程序后会得到如图2-12所示的程序,选中注册程序右键点击选择【以管理员身份运行(A)】,如图2-13所示。

图2-12 MDK-ARM 软件注册程序

图2-13 注册程序运行界面

        (2)MDK-ARM 软件的正式注册,返回电脑桌面找到MDK-ARM软件图标选中,鼠标右键选择【以管理员身份运行(A)】(如图2-14所示),注意在MDK-ARM软件注册时一定要以管理员身份运行不然当正式注册时会不成功,这点在本章末以附录的形式呈现。

图2-14 运行MDK-ARM软件开始注册

        (3)以管理员身份运行Keil软件后即可进入到keli软件的主界面中,此时在主界面顶部的状态栏中找到【File】执行【License Management…】选项,如图2-15所示。

 图2-15 Keil 软件主界面

        (4)执行完【License Management…】后即会弹出导入注册号弹窗,在此界面我们需要复制 CID 号码,如图2-16所示。

 图2-16 导入注册号弹窗界面

        (5)复制完成 CID 号后,返回 MDK-ARM 软件注册程序,将复制的 CID 号填入到注册软件的【CID】选项栏中(如图2-17所示),在同界面下选择【Target】下拉选框选择ARM,找到【Generate】单击,会弹出对应的注册号,复制这个注册号返回 Keil 软件。

         (6)复制注册程序给出的注册号后,回到 Keil 软件导入注册号弹窗界面,将我们复制的注册号填入弹窗的【New License ID Code (LIC)】选项框中(如图2-18所示)并点击【Add LIC】按钮,完成后就可以看到如图2-19所示的MDK-Lite部分显示Expires:Dec 2032,及完成了软件的注册,此时就能正常使用Keil开发STM32了。

 图2-18 导入注册号弹窗界面

 图2-19 软件注册完成界面

2.3 Keil软件的使用以及工程的建立

2.3.1 Keil软件的基本功能

        Keil 软件提供了许多功能和工具,可以帮助开发人员开发、编译、调试和烧录嵌入式系统中的代码。以下是Keil软件的基本功能和作用:

        编辑器:Keil软件提供了内置的代码编辑器,支持多种编程语言,包括C、C++、ARM汇编语言和8051汇编语言等。开发人员可以使用这个编辑器编写和编辑代码。

        编译器:Keil软件集成了C和C++编译器,以及针对不同芯片架构的汇编语言编译器。编译器可以将代码转换成可执行文件,以供后续的调试和烧录。

        调试器:Keil软件的调试器支持单步调试、断点调试、实时监控变量值和内存内容等。开发人员可以使用调试器来检测代码的执行流程、定位代码中的错误,并且在实际的硬件上测试代码的正确性。

        烧录器:Keil软件的烧录器支持多种烧录方式,例如JTAG、SWD和ISP等,可以将编译好的程序烧录到目标芯片中,以便进行测试和验证。

        仿真器:Keil软件提供了仿真器功能,可以模拟目标芯片的行为和外围设备的交互,帮助开发人员在没有实际硬件的情况下进行测试和调试。

        代码分析器:Keil软件集成了代码分析器,可以对代码进行静态分析,检测代码的错误和潜在问题,以帮助开发人员改善代码的质量和可靠性。

        总之,Keil软件作为一款嵌入式开发工具,具有代码编辑、编译、调试、烧录、仿真、代码分析等多种功能,可以帮助开发人员提高开发效率和代码质量。

2.3.2 Keil软件工程模板的创建

       (1)桌面新建文件夹将其命名为“Template”,如图所示:

         (2)在我们创建的“Template”文件夹中创建如图所示的文件夹:

         (3)使用Keil5软件建立工程,双击桌面Keil5图标,如图所示:

         (4)进入软件后在主界面点击“Project”按钮,在其下拉选项中选择“New uVision Project”,如图所示:

         (5)在弹出的对话框中将工程命名为“BH-F103”,并将工程保存到我们创建的“Template”文件夹下的“Project”文件夹下,如图所示:

        (6)点击“保存”后在弹出的对话框的“Search”框中输入“STM32F103ZE”选择我们开发板对应的主控芯片,如图所示:

         (7)点击“OK”按钮,在弹出的对话框中点击“OK按钮”,如图所示:

         (8)创建好工程后点击魔术棒工具,在弹出的对话框中选择“Output”选项,选择“Select Folder Objects”选项,并将路径更改为我们创建的“Template”文件夹下的“Output”文件夹下,并点击“OK按钮”,完成后将“Create HEX File”复选框勾上点击“OK”,如图所示:

         (9)在软件开发界面将我们创建的工程添加上一些组来管理我们的工程文件,单机“Source Group 1”并间隔1s左右再次单机将其重命名为“STARTUP”,完成后在“Target 1”上使用鼠标右键选择“Add Group”选项添加新的组,并用相同的方法重命名,完成后会得到如图所示的工程:

         (10)打开我们创建的“Template”找到“Doc”文件夹,在其中创建名为“readme.txt”的文件,这个文件主要用来对我们以后我们所写的代码进行一些说明,如图所示:

         (11)在我们创建的“Template”文件下的“Libraries”为文件夹下创建名为“CMSIS”,“FWlib”的两个文件,完成后打开下载好的ST官方标准库“STM32F10x_StdPeriph_Lib_V3.5.0”,将文件中此路径(\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm)下的文件复制,回到刚才创建好的“CMSIS”文件夹下创建名为“startup”的文件夹,将复制的文件粘贴的新创建的文件夹中,如图所示:

         (12)将官方标准库中此路径(\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x)下的文件复制到我们创建的“CMSIS”文件夹下,如图所示:

 (13)将官方标准库中此路径(\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport)下的文件复制到我们创建的“CMSIS”文件夹下,如图所示:

         (14)将官方标准库中此路径(\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver)下的“inc”和“src”两个文件复制到我们创建的“FWlib”文件夹下,如图所示:

         (15)将官方标准库中此路径(\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template)下的文件复制到我们创建的“FWlib”文件夹下,如图所示:

         (16)回到我们创建的“Template”文件夹下的“Project”文件夹并将如图所示的这几个文件删除,如图所示:

         (17)相同目录下双击“Template.uvprojx”文件打开工程,如图所示:

         (18)在打开的工程中在左侧双击“STARTUP”组,在弹出的对话框中将此路径(\Template\Libraries\CMSIS\startup)下的“startup_stm32f10x_hd.s”文件添加到这个组中,如图所示:

         (19)双击“CMSIS”组,在弹出的对话框中将此路径(\Template\Libraries\CMSIS)下的所有文件添加进来,如图所示:

         (20)双击“FWLIB”组,在弹出的对话框中将此路径(\Template\Libraries\FWlib\src)下的所有文件添加进来,如图所示:

         (21)双击“USER”组,在弹出的对话框中将此路径(\Template\User)下的两个.c文件添加进来,如图所示:

         (22)双击“FWLIB”组,在弹出的对话框中将此路径(\Template\Doc)下的“readme.txt”文件添加进来,如图所示:

         (23)完成上述步骤后点击魔术棒工具,选择“C/C++(AC6)”选项,在这个界面中的“Define”框中填入“STM32F10X_HD, USE_STDPERIPH_DRIVER”,完成后再相同界面点击“Include Paths”框后面的三个点按钮,如图所示:

         (24)点击三个点按钮后在弹出的对话框点击新建按钮添加新的路径,在弹出的框后点击三个带你按钮将“CMSIS”文件夹路径添加进来,如图所示:

         (25)使用相同的方法将“inc”和“User”两个文件夹的路径都添加进来,如图所示:

         (26)接着点击“OK”按钮确定操作,完成后点击魔术棒工具在弹出的对话框中选择“Target”选项将“ARM Compiler”切换成“Use default compiler version 5”,并点击“OK按钮”,如图所示:

         (27)到这里所有的配置过程已经完成,接下来需要验证我们所搭建的这个环境是否是能够正常使用的,在Keil5软件开发界面点击编译按钮等待编译完成,当出现“"..\Output\Template.axf" – 0 Error(s), 0 Warning(s).”时说明我们搭建的开发环境没有问题,如图所示:

2.4 附录:

        1、当我们在软件注册时不使用【以管理员身份运行(A)】会出现的错误如下图所示, 解决办法就是关闭程序,从新打开一次并以管理员身份运行即可。

2、Keil 软件的实用配置

        (1)魔术棒工具

Keil软件中的Options for Target工具是一个用于配置目标设备及其编译和调试选项的强大工具。该工具允许您为不同的目标设备创建和配置多个项目,并设置编译选项、连接选项和调试选项。Options for Target工具主要包括以下几个方面:

Target设备选项:您可以通过该选项选择您正在使用的目标设备,并设置它的参数,例如片上存储器的大小和地址、时钟频率、中断向量表等。

C/C++编译选项:该选项用于设置编译器的参数,例如优化级别、警告级别、预定义宏等。您还可以通过该选项添加库和头文件的搜索路径。

Assembler选项:该选项用于设置汇编器的参数,例如预定义宏、列表输出、错误检查等。

Linker选项:该选项用于设置连接器的参数,例如堆栈大小、代码段和数据段的地址、调试信息、库等。

Debug选项:该选项用于配置调试器的参数,例如仿真器接口、Flash编程器、调试选项、调试信息等。

使用Options for Target工具,可以轻松地为目标设备创建和配置多个项目,并根据需要进行更改。该工具的设置还可以导出和导入,使我们可以方便地分享和备份配置设置。

          (2)软件需要设置的几个点,便于日常代码编写。

        ①Editer 选项窗口

        ②Colors & Fonts 选项窗口

          ③Text Completio 选项窗口

谢谢阅读!

物联沃分享整理
物联沃-IOTWORD物联网 » STM32开发工具介绍及使用详解

发表评论