打印
[其他ST产品]

STM32 CubeMx教程 -- 基础知识及配置使用教程

[复制链接]
4980|49
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ym0sly|  楼主 | 2023-3-28 15:26 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
前言
STM32CubeMX 简介

STM32CubeMX 是 ST 意法半导体近几年来大力推荐的STM32 芯片图形化配置工具,目的就是为了方便开发者,允许用户使用图形化向导生成C 初始化代码,可以大大减轻开发工作,时间和费用,提高开发效率。STM32CubeMX几乎覆盖了STM32 全系列芯片。

在CubeMX上,通过傻瓜化的操作便能实现相关配置,最终能够生成C语言代码,支持多种工具链,比如MDK、IAR For ARM、TrueStudio等 省去了我们配置各种外设的时间,大大的节省了时间。

并且随着 ST停止了标准库的更新,ST官方大力推荐CubeMX与HAL库的使用,虽然现在还是标准库的主场,但是CubeMX的使用率在逐年提高。

关于STM32CubeMx的安装教程,可以参考其他博主的博客,在这里不进行讲述,注意英文路径即可

本文将讲述 STM32Cube MX的界面介绍、基础设置配置、配置之后的简单使用,不同外设的使用将会在之后博客中详细介绍。

使用特权

评论回复
评论
ym0sly 2023-3-28 15:26 回复TA
———————————————— 版权声明:本文为CSDN博主「Dir_xr」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/Dir_x/article/details/128846252 
沙发
ym0sly|  楼主 | 2023-3-28 15:27 | 只看该作者
一、STM32CubeMx 界面介绍
首先先看一下STM32CubeMx 的主界面

新建工程一般选择中间的 ACCESS TO MCU SELECTOR
如果有其他需求也可以选择其他的

使用特权

评论回复
板凳
ym0sly|  楼主 | 2023-3-28 15:28 | 只看该作者
File 界面

使用特权

评论回复
地板
ym0sly|  楼主 | 2023-3-28 15:29 | 只看该作者
Windows 界面

使用特权

评论回复
5
ym0sly|  楼主 | 2023-3-28 15:42 | 只看该作者
Updater Settings 界面

使用特权

评论回复
6
ym0sly|  楼主 | 2023-3-28 15:42 | 只看该作者
二、STM32CubeMx 使用教程
新建工程
首先新建工程,这里选择使用第一种新建工程的方式




使用特权

评论回复
7
ym0sly|  楼主 | 2023-3-28 15:43 | 只看该作者
如果芯片信息没有更新,会跳出更新界面,继续更新和跳过更新都行
接下来进入选择芯片界面

在(1)位置输入想要使用的芯片型号,在(2)位置选择详细的芯片类型,最后在(3)位置开始建立一个工程

使用特权

评论回复
8
ym0sly|  楼主 | 2023-3-28 15:43 | 只看该作者
创建完成之后进入下一个界面

使用特权

评论回复
9
ym0sly|  楼主 | 2023-3-28 15:44 | 只看该作者
在这个界面中有三个部分
(1)是MCU的外设选择界面,在这里选择使用的MCU外设资源
有两种排序方式: Categories 种类选择 、 A-Z 顺序选择
(2)是详细的外设配置界面,关于每个外设的详细参数都在这里配置
(3)是芯片设置预览界面,预览每个引脚在什么位置和配置了什么功能

另外 配置引脚相应的功能可以在(1)外设选择界面,也可以在(3)预览界面直接点击相应的引脚进行配置

使用特权

评论回复
10
ym0sly|  楼主 | 2023-3-28 15:48 | 只看该作者
例如想配置PC13引脚输出高电平,可以直接在(3)界面点击PC13引脚

使用特权

评论回复
11
ym0sly|  楼主 | 2023-3-28 15:48 | 只看该作者
由上图可知,PC13引脚可以配置为RTC时钟模式、输入模式、输出模式、以及中断模式等等,详细功能会在之后博客中介绍。

使用特权

评论回复
12
ym0sly|  楼主 | 2023-3-28 15:50 | 只看该作者

另外在配置界面,出现淡黄色表示为不可配置引脚,电源专用引脚以淡黄色突出显示。其引脚不可进行其他用途配置。

使用特权

评论回复
13
ym0sly|  楼主 | 2023-3-28 15:51 | 只看该作者



这种颜色表示配置了一个I/O口的功能,但是没有初始化相对应的外设功能 ,引脚处于no mode 状态,也就是引脚进行了资源分配,但是在详细配置界面没有初始化操作。

使用特权

评论回复
14
ym0sly|  楼主 | 2023-3-28 15:54 | 只看该作者

如果配置完成之后显示绿色,则表示配置成功。

使用特权

评论回复
15
ym0sly|  楼主 | 2023-3-28 15:57 | 只看该作者
接下来介绍一些工程中通用的配置操作:

配置RCC时钟参数


使用特权

评论回复
16
ym0sly|  楼主 | 2023-3-28 15:57 | 只看该作者
将外部高速时钟(HSE)配置为Crystal/Ceramic Resonator(晶体/陶瓷谐振器),也就是使用外部晶振作为时钟源,外部低速时钟(LSE)用不到,可以不配置。
如果不配置RCC时钟,则是默认使用内部高速时钟(HSI),这也将影响之后时钟树的配置。

使用特权

评论回复
17
ym0sly|  楼主 | 2023-3-28 16:39 | 只看该作者
推荐将RCC时钟配置外部晶振

配置SYS参数

使用特权

评论回复
18
ym0sly|  楼主 | 2023-3-28 16:42 | 只看该作者
Debug :
默认是关闭的,如果不使用调试器关闭即可,即No Debug;
在STM32CubeMX的SYS选项栏中有SW和JTAG协议选项,用户可以根据需要选择相应的协议;

JTAG调试接口(JTAG-DP)需要5个引脚;CubeMX中可选择5pin或4pin的JTAG,5pin比4pin多了一个复位引脚。
SW调试接口(SW-DP)需要2个引脚。二者之间有复用引脚。SW调试端口采用同步串行协议:SWCLK引脚为从主机到从机的时钟信号;SWDIO为双向数据信号。

ST-Link采用的是SW调试接口,选择Serial Wire ;
J-Link采用的是JTAG调试接口,根据实际要求选择 JTAG(4pin) 或者 JTAG(5pin) ;
如果使用J-Link 但是采用SWD协议,也可以选择Trace Asynchronous Sw ;
Trace Asynchronous Sw 模式有时候也可以解决使用ST-Link 烧录之后无法烧录和调试的情况

为了避免一次烧录之后无法下一次烧录或者调试的情况, 推荐选择Serial Wire

使用特权

评论回复
19
小夏天的大西瓜| | 2023-3-28 16:48 | 只看该作者
号称STM32开发利器

使用特权

评论回复
20
ym0sly|  楼主 | 2023-3-28 16:52 | 只看该作者
如果在STM32CubeMX中选择SW协议,MDK 也必须 选择SW协议。JTAG协议配置也同理。否则会造成下载和调试失败。在实际项目中SW协议使用使用的比较多,速度更快,占用的引脚更少,推荐配置成SW协议,即Serial Wire模式;

System Wake-Up :
设置低功耗模式下的自动唤醒功能,通过引脚PA0。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

28

主题

327

帖子

2

粉丝