STM32开发环境搭建工程创建(嵌入式学习)

news2024/11/16 1:32:21

STM32开发环境搭建&工程创建

  • 1. 开发环境搭建
    • 1.1 STM32CubeMX
      • 简介
      • 安装
    • 1.2 Keil5
      • 简介
      • 安装
    • 1.3 ST_LINK
      • 简介
      • 安装
  • 2. 创建STM32工程

1. 开发环境搭建

1.1 STM32CubeMX

简介

在这里插入图片描述

STM32CubeMX是STMicroelectronics公司提供的一款集成开发环境(IDE)工具,用于快速配置和初始化STM32微控制器系列的软件工程。它提供了图形化界面和交互式工具,使开发者能够轻松地生成STM32微控制器的初始化代码和配置文件。

STM32CubeMX具有以下主要功能和特点:

  1. 微控制器选择和配置:STM32CubeMX支持广泛的STM32微控制器系列,开发者可以通过界面选择特定的型号,并配置其参数和功能。这包括时钟设置、引脚分配、外设配置、中断优先级等。

  2. 外设驱动配置:STM32CubeMX提供了丰富的外设驱动配置选项。开发者可以通过简单的界面配置外设的初始化参数和工作模式,如UART、SPI、I2C、GPIO、定时器等。它还支持配置中断和DMA传输。

  3. 时钟树配置:STM32CubeMX具有直观的时钟树配置工具,可以帮助开发者设置和优化系统的时钟源和频率。它提供了灵活的时钟配置选项,包括外部晶体、内部时钟源、PLL等。

  4. 自动生成代码:STM32CubeMX可以根据用户的配置和需求,自动生成初始化代码和驱动代码。这包括启动文件、主函数框架、外设驱动函数等。生成的代码可以与主流的集成开发环境(IDE)如Keil MDK、IAR Embedded Workbench等无缝集成。

  5. 扩展生态系统:STM32CubeMX与STM32Cube软件生态系统紧密集成。开发者可以通过STM32Cube库、中间件(如FreeRTOS、USB库)、应用示例等进一步扩展和开发应用。

STM32CubeMX提供了一个简化的开发流程,使开发者能够更快地开始STM32微控制器的项目。它提供了可视化的界面和自动生成的代码,减少了配置错误和手动编写底层代码的工作量,提高了开发效率。

安装

ST公司出品 点击这里下载——》STM32CubeMX
链接 https://www.st.com/zh/development-tools/stm32cubemx.html

注意:还需要安装Java环境(因为STM32CubeMX需要Java环境)
点击这里下载——》Java下载
链接 https://www.java.com/en/download/

一定要先安装Java环境
一定要先安装Java环境
一定要先安装Java环境
点击安装:如果不需要更改目录,可以按照默认,如果需要更改,请注意不要包含中文,路径自己选择,以下仅是示例。
在这里插入图片描述

选择更改目录
在这里插入图片描述

完成安装,关闭即可。
在这里插入图片描述

然后安装STM32CubeMX
更改路径,路径不要出现中文且保证文件夹为空
在这里插入图片描述

继续点击下一步
如果出现下图的提示,点击Yes
在这里插入图片描述

点击Next

在这里插入图片描述

点击Done
在这里插入图片描述
打开刚安装的stm32cubemx软件,点击help,按如下操作

在这里插入图片描述

在这里插入图片描述

根据自己的型号进行添加,这里是M0,一定要注意
根据自己的型号进行添加,这里是M0,一定要注意
根据自己的型号进行添加,这里是M0,一定要注意

在联网状态下点击Install Now

等待下载安装完成

当出现如下界面即可。

在这里插入图片描述

这样cubemx软件就安装完成了。

1.2 Keil5

简介

在这里插入图片描述
Keil5(Keil uVision5)是一款由ARM公司开发的集成开发环境(IDE),用于嵌入式系统的软件开发。它为ARM架构的微控制器提供了全面的工具链和开发平台,包括编译器、调试器、仿真器和其他辅助工具。

以下是Keil5的主要特点和功能:

  1. 编译器和调试器:Keil5集成了ARM公司提供的MDK(Microcontroller Development Kit),包括C/C++编译器、汇编器和调试器。它支持多种ARM架构的微控制器系列,如Cortex-M、Cortex-R和Cortex-A系列。

  2. 工程管理:Keil5提供了工程管理功能,使开发者能够组织和管理项目文件。它支持多种文件类型,包括源代码文件、头文件、链接脚本、配置文件等。开发者可以轻松地添加、删除和管理文件,进行工程配置和构建。

  3. 调试和仿真:Keil5具有强大的调试和仿真功能,支持多种调试接口和设备。它可以与各种调试器和仿真器配合使用,如CMSIS-DAP、J-Link、ST-Link等。开发者可以在Keil5中进行源码级调试、寄存器查看、变量监视等操作。

  4. 代码编辑器:Keil5的代码编辑器提供了丰富的编辑功能和语法高亮显示。它支持自动补全、代码折叠、语法检查等功能,方便开发者编写和编辑代码。还可以集成版本控制系统,如Git,以便团队协作和代码管理。

  5. 仿真器和实时操作系统(RTOS)支持:Keil5集成了支持嵌入式系统开发的仿真器和实时操作系统(RTOS)。开发者可以在Keil5中进行仿真调试,并使用RTOS模块进行多线程和实时任务的开发和调试。

Keil5是嵌入式系统开发的一体化工具,提供了全面的开发环境和工具链,使开发者能够更加高效地开发、调试和测试嵌入式软件。它被广泛用于ARM架构的微控制器的开发,特别是在物联网、工业自动化、消费电子等领域中得到了广泛应用。

安装

1.可以去官方下载
点击这里下载——》STM32官网
链接 https://www.st.com/content/st_com/zh.html
2.也可以去我网盘下载
点击这里下载——》STM32
链接:https://pan.baidu.com/s/1gpwn8w1Pe-kq7wcc-yLxJw?pwd=JAYU
提取码:JAYU
Keil的安装过程中全程不能出现中文,包括路径
在这里插入图片描述

双击安装包MDK534.exe,进行安装

选择路径一步,如果不想选择C盘,可以更改盘符。Keil路径和芯片依赖包的路径尽量按下述路径安装。
在这里插入图片描述
在这里插入图片描述

等待安装完成即可。

中途出现ulink驱动安装,选择始终信任,并点安装。

在这里插入图片描述

点击完成即可。

在这里插入图片描述

安装完成后立马跳出这个界面:

在这里插入图片描述

点击ok,直接关掉这个界面。

在这里插入图片描述

到这keil5就安装完成了。

3 安装平台依赖包

在这里插入图片描述

直接双击,它会自动寻找keil安装路径(无法更改),一路next即可。
在这里插入图片描述
点击finish即可。

1.3 ST_LINK

简介

ST-Link是STMicroelectronics(ST)公司提供的一款用于调试和编程STM32微控制器的调试器和仿真器。它是一种硬件工具,用于连接开发计算机和目标STM32设备,并提供调试、下载和运行应用程序的功能。

ST-Link具有以下主要特点和功能:

  1. 调试功能:ST-Link可以与开发计算机上的调试工具(如Keil、IAR等)配合使用,提供源码级的调试功能。它支持断点设置、单步执行、变量监视、寄存器查看等调试操作,帮助开发者分析和调试应用程序的执行过程。

  2. 仿真功能:ST-Link可以模拟目标STM32设备的行为,使开发者能够在开发计算机上运行和测试应用程序。通过ST-Link,开发者可以执行和调试代码,观察程序的输出和行为。

  3. 编程功能:ST-Link支持将编译后的应用程序下载到目标STM32设备中。它可以通过连接目标设备的JTAG或SWD接口,将应用程序的二进制文件烧录到设备的闪存中,以实现应用程序的部署和运行。

  4. 固件升级:ST-Link本身的固件也可以进行升级。STMicroelectronics定期发布新的固件版本,以提供更好的兼容性和功能支持。开发者可以使用ST提供的固件升级工具,将最新的固件加载到ST-Link中,以获得更好的使用体验。

ST-Link广泛应用于STM32微控制器的开发过程中。它为开发者提供了强大的调试和仿真功能,帮助他们快速、高效地开发和测试嵌入式应用程序。ST-Link与多个集成开发环境(IDE)和编译器兼容,并且易于使用,适用于初学者和专业开发者。

安装

1.可以去官方下载
点击这里下载——》ST-LINK
链接 https://www.st.com/en/development-tools/stsw-link004.html
2.也可以去我网盘下载
点击这里下载——》ST-LINK
链接:https://pan.baidu.com/s/1ns-xCxikS18F4qS4YygIHg?pwd=JAYU
提取码:JAYU

首先插入ST_LINK烧写器,右键计算机选择设备管理器

在这里插入图片描述

出现如下界面(设备上有警告标识),则需要安装驱动程序

在这里插入图片描述

然后找到下图所示文件
以管理员身份运行

在这里插入图片描述

点击下一页,点击安装即可。

在这里插入图片描述

安装完成

在这里插入图片描述
在这里插入图片描述

警告消失,即可正常使用。

2. 创建STM32工程

STM32CubeMX主界面
在这里插入图片描述
在这里插入图片描述

使用STM32CubeMX新建一个STM32工程

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/642692.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Github开源项目Next Chat4 —— 之原生Js前端特效给你的眼睛来一场视觉盛宴吧

前期回顾 打造极简风格动效 —— 5 分钟轻松实现惊艳、震撼人心的视觉效果_彩色之外的博客-CSDN博客css Loading 实战教学https://blog.csdn.net/m0_57904695/article/details/131156011?spm1001.2014.3001.5501 👍 本文专栏:开发技巧 一键使用 GP…

精通postman教程(四)-创建请求及添加参数 详解

作为一名测试工程师,那么Postman绝对是大伙必备的工具之一。 在这个系列教程中,我将为大伙详细讲解如何使用Postman进行API测试。 今天我为大伙讲解postman如何创建请求及添加参数,让你们快速上手这款工具。 一、处理GET请求 Get请求用于…

敏捷实践 | 8个实用方法助你开好有效的敏捷反思会

又是年底,各大app都推出各种年度总结,年度回顾。这些总结有的很有趣,有的很扎心,在推动年底KPI完成的同时,也给我们带来不同角度的思考。而在敏捷工作方法中,反思回顾也是敏捷实践很关键的一环。那么我们如…

链动2+1系统开发模式,如何助力企业平台月赚上百万?

现在市面上的商业模式数不胜数,各种各样的都有,而链动21就是其中非常优质的一款商业模式。它不仅能够让消费者消费全返,还能够助力企业平台月赚上百万,而且完全的合法合规,那么链动21模式是怎么做到的呢?下…

2023年惠州/广州/深圳NPDP产品经理认证,这里够专业

产品经理国际资格认证NPDP是新产品开发方面的认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。 【认证机构】 产品开发与管理协会(PDMA)成立于1979年,是…

C 语言实现一个简单的 web 服务器

说到 web 服务器想必大多数人首先想到的协议是 http,那么 http 之下则是 tcp,本篇文章将通过 tcp 来实现一个简单的 web 服务器。 本篇文章将着重讲解如何实现,对于 http 与 tcp 的概念本篇将不过多讲解。 一、了解 Socket 及 web 服务工作…

高并发下数据一致性问题:数据库+缓存双写模式分析

前言 随着互联网业务的发展,其中越来越多场景使用了缓存来提升服务质量。从系统角度而言,缓存的主要目标是减轻数据库压力(特别是读取压力)并提高服务响应速度。引入缓存就不可避免会涉及到缓存与业务数据库数据一致性的问题&…

充电桩计量检测TK4860E交流充电桩检定装置

固定检定点:系统预设24A220V和12A220V的检定点,可完成单相32A或单相16A充电桩的工作误差的检定,24A和12A检定点的设计既可满足实际输出达不到额定电流的单相充电桩的检定,又可保证检定效率。 固定电量:系统可预设充电…

源代码安全管理

现在,随着软件开发公司对源代码保护的日益重视,源代码已成为企业核心竞争力的关键因素之一。为了确保企业在同行中展露头角并具备核心竞争力,源码的保护变得至关重要。 目前,源代码加密有两种常用方式:物理性和软件性…

leetcode 139.单词拆分

题目描述 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。 来源:力扣(LeetCode) 链…

ASEMI代理NXP快恢复功率二极管BYC30W-600P参数

编辑-Z BYC30W-600P参数描述: 型号:BYC30W-600P 重复峰值反向电压VRRM:600V 峰值工状向电压VRWM:600V 反向电压VR:600V 平均正向电流IF:30A 正向电压VF:1.38V 反向恢复时间trr&#xff…

iptables trace使用

iptables规则链流向: modprobe ipt_LOG ip6t_LOG nfnetlink_log加载内核模块 写入iptables规则,-A XXX -j TRACE iptables --version查看iptables版本,nf_tables则使用xtables-monitor --trace监听iptables规则流动。legacy则使用/var/log…

也谈现在网站行业是否还有必要做下去?

我是卢松松,点点上面的头像,欢迎关注我哦! 想就这个话题唠叨几句的起因,是前几天拜读了卢松松发表的一篇题为**《为什么说网站行业不能做了?》**的文章。文章内容是卢松松对网站行业的现状随意的吐槽,没想到有位网友…

第十五个“世界海洋日”:水声功率放大器能为海洋水下声呐研究做些什么?

2023年6月8日,第十五个“世界海洋日”到来,今年的海洋日我们除了要聚焦海洋生态保护和海洋资源的可持续发展及利用,我们同样把视线聚焦在海洋科学研究上,海洋水下声呐技术,就是我们本次的主题。 作为能良好驱动声呐&am…

线性回归算法(含示例代码)

1 知识点讲解 1.1 线性回归 线性回归是一种常见的机器学习算法,用于预测连续型变量。该算法的目标是建立一个线性模型,根据输入的自变量来预测一个连续型的因变量。 在线性回归中,我们假设因变量(也称为响应变量)与…

近80%企业首选——亚马逊云科技为中国企业出海保驾护航

随着全球数字化进程的不断加速,中国出海“大航海时代”已然到来。从#万企组团出国抢订单#到#苏州赴日包机抢单20亿元#,中国企业对海外市场的优势已经一步步建立了起来。 从卖小商品、卖鞋的“世界工厂”,到现在产业升级后的卖汽车、卖服务、…

抖音seo矩阵系统源码|需求文档编译说明(一)

抖音seo矩阵系统文章目录技术囊括 ①产品原型 ②需求文档 ③产品流程图 ④部署方式说明 ⑤完整源码 ⑥源码编译方式说明 ⑦三方框架和SDK使用情况说明和代码位置 ⑧平台操作文档 ⑨程序架构文档 短视频矩阵系统源码开发锦囊囊括前言一、短视频账号矩阵系统开发者必备能力语言&…

招标投标管理微信小程序解决方案

招投标管理微信小程序是一种基于微信公众平台构建的在线招投标管理平台,适用于各类招投标项目管理,通过小程序内的功能实现投标、查看、评估和管理等各项业务。下面我们来了解一下招投标管理微信小程序的具体功能和应用情况。 招投标管理微信小程序的功能…

App 启动速度优化

前言​​​​​​​ APP打开的一瞬间速度快慢;就好比人的第一印象,快速的打开一个应用往往给人很舒服的体验。app经常性卡顿启动速度很慢,这无疑是对用户的流失。 启动方式介绍 APP启动的方式分为3种:冷启动、热启动、温启动。…

28.vite

目录 1 一些概念 1.1 单页面应用程序SPA 1.2 vite 2 初始化vite项目 3 项目中的文件 1 一些概念 1.1 单页面应用程序SPA 单页面应用程序是只有一个页面的前端,切换页面通过前端路由来切换 特点如下 实现了前后端分离,后端仅出接口&#…