求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
要资料
 
追随技术信仰

随时听讲座
每天看新闻
 
 
STM32单片机自学教程
0.前言
1.STM32单片机入门
2.STM32开发C语言
3.STM32F1x系统架构
4.STM32单片机系统电路
5.STM32F1x的寄存器
6.STM32开发环境介绍
7.嵌入式开发常见概念简介
8.STM32开发方式(库函数)介绍
9. Keil5-MDK软件简介
10.创建MDK工程-寄存器版
11.创建MDK工程-基于自建库函数
12.STM32标准库简介
13.创建MDK工程-基于标准库版
14.GPIO简介
15.GPIO输入-按键检测
16.GPIO位带操作
17.RCC-STM32时钟配置
18.STM32中断系统概述
19.基本定时器
 

 
目录
 
第6章.STM32开发环境介绍
来源:CSDN,作者:村里大明白
52 次浏览
3次  

6.1.STM32的常用开发环境

STM32开发常见的开发环境如图6.1-1所示,按照普及率进行了排名,用的最多的就是Keil公司的MDK,下面分别进行介绍。

图6.1-1 STM32的常用开发环境

6.1.1 MDK

图6.1-2 MDK软件

STM32的开发环境MDK(也称为MDK-ARM Version 5或MDK-ARM)是由德国Keil公司(现已并入ARM公司)开发的一款针对ARM Cortex-M系列微控制器的完整软件开发环境。界面美观,简单易用,是 STM32 最常用的集成开发环境。它为嵌入式软件开发者提供了从项目创建、代码编写、编译链接、仿真调试到最终程序烧录的一整套解决方案。在ST(意法半导体)开发环境中,MDK常被用于各种基于ARM Cortex-M内核的MCU(微控制器)的程序开发。

MDK与Keil的关系在于,MDK是Keil公司的一个集成开发环境(IDE),专门针对ARM公司的微控制器进行软件开发。Keil公司开发的基于μVision IDE,支持绝大部分8051内核的微控制器开发工具。而MDK-ARM则是ARM公司目前最新推出的针对各种嵌入式处理器的软件开发工具,它集成了业内最领先的技术,包括μVision集成开发环境与RealView编译器。

在开发过程中,使用MDK可以方便地进行项目创建、代码编写、编译链接和仿真调试等操作。MDK的设备数据库中有很多厂商的芯片,是专为微控制器开发的工具,支持ARM7、ARM9、Cortex-M4/M3/M1、Cortex-R0/R3/R4等ARM微控制器内核。这使得STM32的开发者能够轻松地进行嵌入式软件的开发和调试。

6.1.2 STM32CubeIDE

图6.1-3 STM32CubeIDE

STM32CubeIDE是ST于2019年新推出的一款多功能的集成开发工具,它集成了TrueSTUDIO和STM32CubeMX插件,并基于GDB进行调试,它允许集成数百个现有插件,这些插件完成Eclipse的功能。

TrueSTUDIO插件是一款建立在EclipseCDT、GCC和GDB的C/C++集成开发工具,其具有项目创建和管理、代码编辑、代码编译以及代码在线调试等功能。

STM32CubeMX插件具有图形化配置功能,可以直观地选择MCU/MPU型号、动态配置引脚和设置时钟树、动态设置外围设备和中间器件的模式,可以自动处理引脚冲突和生成初始化代码。

TrueSTUDIO和STM32CubeMX的强强联手,使STM32CubeIDE得以和MDK进行媲美。STM32CubeIDE完全开源免费,并且跨平台,目前支持Windows、Linux和macOS多个操作系统。但是STM32CubeIDE只是ST公司芯片的开发环境,MDK所支持的芯片就要广的多了。

6.1.3 EWARM

图6.1-4 IAR EWARM

EWARM,全称为IAR Embedded Workbench for ARM(IAR EWARM),是由IAR Systems公司开发的一款集成开发环境(IDE),专为ARM架构的微控制器设计。它提供了一个综合性的开发环境,用于编译、调试和优化基于ARM架构的嵌入式应用程序,适用于STM32等ARM Cortex-M系列微控制器的开发。

IAR EWARM的主要特点包括:

强大的编译器:EWARM配备了一款高效而稳定的C/C++编译器,能够生成高度优化的机器语言代码。这种编译器具有出色的代码大小和执行速度优化能力,保证了嵌入式应用程序的高效运行。

综合性的开发环境:EWARM提供了一个集成的开发环境,包括源代码编辑器、项目管理工具、构建系统和调试器等。开发人员可以在一个界面中完成代码编写、构建、调试等开发任务,简化了开发流程,提高了开发效率。

广泛的芯片支持:EWARM支持多个芯片系列,包括Arm Cortex-M、Arm Cortex-R和Arm Cortex-A等。这使得开发人员可以根据项目需求选择适合的芯片,并使用EWARM进行开发。

入门容易、使用方便:EWARM具有友好的用户界面和直观的操作方式,使得初学者可以快速上手。同时,它还提供了丰富的文档和示例代码,帮助开发人员更好地理解和使用EWARM。

代码紧凑:EWARM生成的代码紧凑,占用的内存空间较小,这对于资源有限的嵌入式系统来说非常重要。

此外,IAR EWARM还包含一个全软件的模拟程序(simulator),用户不需要任何硬件支持就可以模拟各种ARM内核、外部设备甚至中断的软件运行环境。从中可以了解和评估IAR EWARM的功能和使用方法。对比 MDK,IAR的使用人数少一些。

6.1.4 几种开发环境的比较

在众多IDE里,以前MDK和IAR的用户是比较多的,现在感觉使用STM32CubeIDE的已经超过IAR。很多人一开始学习单片机的时候使用的是MDK或者IAR来开发,这两个IED使用起来简单、好用并且普及很广。例如MDK,其开发界面美观,不需要做很麻烦的配置就可以进行开发,编译速度快,并且具有一键下载功能,可以说是比较方便的,对初学者来说比较友好。不过,MDK是一款付费集成开发环境,如果要商用,需要联系Keil公司购买,而免费版或评估版要么有器件型号限制,要么有程序容量限制。

使用MDK进行开发,易于上手,操作简单,如果之前有接触MDK的人,可以更快上手STM32MCU开发。但MDK没有没有图形化配置界面,也没有自动生成初始化代码的功能,需要自己手动去实现,不过这有助于加深学习者对底层操作过程的理解。

使用STM32CubeIDE进行开发,可以借助STM32CubeMX插件的图形化配置功能进行配置,操作直观,可以自动生成初始化代码。STM32CubeMX插件把很多东西封装的比较好,就是因为封装的比较好,所以我们可以直接跳过对部分底层的操作,不过这不利于对底层的理解。当然,我们也可以不使用STM32CubeMX插件的图形化配置功能和初始化代码生成功能,可以直接使用TrueSTUDIO插件的功能,这个时候可以在STM32CubeIDE上导入已有的TrueSTUDIO工程来进行开发也是可以的,使用上就和TrueSTUDIO、MDK差不多。STM32CubeMX插件的图形界面操作加上TrueSTUDIO插件的ECLIPSE/CDT框架,使得STM32CubeIDE的配置过程比MDK要麻烦,而且没有一键下载功能,使用上会让人觉得有一种―慢的感觉,比起MDK,STM32CubeIDE有点慢、卡顿。

6.2. MDK安装

MDK的安装可参考如下视频:

[2-1] 软件安装_哔哩哔哩_bilibili

MDK5 的安装分为两步:1,安装 MDK5;2,安装器件支持包。

6.2.1 安装MDK5

MDK5 的安装比较简单,需要提醒一下在选择安装路径的时候,建议大家将 Pack 的路径和 Core 的路径放在一个盘中。安装目录及路径不要有任何中文汉字在里面,最好电脑系统名和用户名,都不要有任何中文。

6.2.2 安装器件支持包

器件支持包可以选择离线和在线安装方式,具体请参考前面视频链接。

需要注意的是MDK 是一款付费集成开发环境,默认软件是试用版的,只能编译不超过32K的代码,我们作为学习者仅做学习使用,可以使用注册工具注册,参考上述视频。如果大家要商用,要从Keil 公司购买!

6.3.安装STLINK驱动

STM32 可以通过 DAP、STLINK、JLINK 等仿真调试器进行程序下载和仿真,我们使用的是STLINK,STLINK的驱动可以直接在我们Keil软件的安装目录里就可以找到,如下图。

图6.3-1 STLINK驱动安装

6.4.安装USB转串口驱动

安装 CH340USB 虚拟串口驱动,以便我们使用电脑通过 USB 和 STM32 进行串口通信。这个网上下载资源很多,这里就不赘述了。

 


您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码: 验证码,看不清楚?请点击刷新验证码 必填



52 次浏览
3次