打印
[其他ST产品]

STM32CubeMX软件介绍及工程文件生成

[复制链接]
662|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
o88ne|  楼主 | 2024-4-30 17:53 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
STM32CubeMX 简介
    STM32CubeMX 是用于 32 位 ARM Cortex STM32 微控制器的图形工具。它通过分步过程可以非常轻松地配置STM32微控制器和微处理器,以及为Arm® Cortex®-M内核或面向Arm® Cortex®-A内核的特定Linux®设备树生成相应的初始化C代码。

STM32CubeMX 是 ST 意法半导体近几年来大力推荐的STM32 芯片图形化配置工具,通过自己对硬件的需要,进行选择,而后可以快速生成代码,减少开发人员的开发难度,时间和花销。





在介绍STM32CubeMX使用前,首先介绍一下STM32HAL固件库

通过STM32CubeMX配置出的工程文件是采用的HAL固件库,HAL固件库是Hardware Abstraction Layer的缩写,中文名称是:硬件抽象层。HAL库是ST公司为STM32的MCU最新推出的抽象层嵌入式软件,为更方便的实现跨STM32产品的最大可移植性。

随着HAL库的推出,ST公司也逐渐放弃了标准库的更新,其中F1系列的标准库已经很多年没有更新了。和标准库对比起来,STM32的HAL库更加的抽象,ST最终的目的是要实现在STM32系列MCU之间无缝移植,甚至在其他MCU也能实现快速移植。


使用特权

评论回复
沙发
o88ne|  楼主 | 2024-4-30 17:53 | 只看该作者
STM32CubeMX软件使用
2.1 首先选择我们所使用的芯片
这里我使用的是stm32f103c8t6的芯片,双击芯片所在行。

使用特权

评论回复
板凳
o88ne|  楼主 | 2024-4-30 17:53 | 只看该作者
选择芯片后如图所示
左侧是芯片所有的功能模块,右边可以双击芯片引脚配置成自己需要的功能。

使用特权

评论回复
地板
o88ne|  楼主 | 2024-4-30 17:54 | 只看该作者
在Clock Configuration里配置芯片的时钟树
stm32f103c8默认是8M赫兹的系统时钟。

使用特权

评论回复
5
o88ne|  楼主 | 2024-4-30 17:54 | 只看该作者
生成工程文件
配置好引脚功能及定义后,点击project Manager生成工程文件 ,需要注意的是生成前要先去Code Generator里勾选一些选项,可以让程序更加简洁清晰。

使用特权

评论回复
6
o88ne|  楼主 | 2024-4-30 17:54 | 只看该作者

使用特权

评论回复
7
o88ne|  楼主 | 2024-4-30 17:54 | 只看该作者
打开工程文件
生成好文件后,用KEIL打开后如下(最好先编译一下,养成习惯)

写程序需要在BEGIN和END之间写,否则下次重新生成后会把程序全部覆盖掉。

使用特权

评论回复
8
o88ne|  楼主 | 2024-4-30 17:55 | 只看该作者

使用特权

评论回复
9
o88ne|  楼主 | 2024-4-30 17:55 | 只看该作者
可以看到用STM32CubeMX生成的文件驱动都是基于HAL固件库。

使用特权

评论回复
10
o88ne|  楼主 | 2024-4-30 17:56 | 只看该作者
总结
STM32CubeMX用了之后发现其实很舒服,配置底层的东西省了很多事,可以把更多精力放在程序架构和代码逻辑上面。后续将会更新STM32CubeMX的使用教学。

使用特权

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

本版积分规则

61

主题

418

帖子

3

粉丝