STM32CubeMX安装及使用分享

说是教程,属实是不敢当,只是把自己觉得较为正式的方式分享给各位,如有问题请提出大家一起讨论。


文章目录


软件下载

  1. 搜索STM32CubeMX。官方链接:
    STM32Cube initialization code generator

    ​​​​

  2. 获取软件前建议注册、登录账号。登录后右上角会显示个人信息,才会出现 "Get Software" 按钮。​​

  3. 点击 "Get Software" 按钮,跳转到下方列表,选择合适版本:

  4. 同意协议后,开始下载


软件安装

此软件安装过程十分经典,同意协议后一直下一步即可,固态硬盘电脑,安装路径默认即可。


软件使用

  • 软件启动后界面如下

  • 其中,中间给出了三个选项按钮,我先略说一下中间的开发板选择按钮和一些软件好用的功能,后面大篇幅再讲单片机按钮的内容

开发板工程

为什么要先讲开发板工程呢?

一是大体内容相同,而我所看到的各种教程,讲开发板的少,初识STM32的同学不知道怎么找资料,不知道怎么用,而单片机,大家都知道上网去查手册,所以先讲讲开发板的界面;

二是开发板其中很多界面和单片机界面类似,一通百通

  • 如果购买了或者运气好获得了官方的开发板,那可以选择中间按钮 "ACCESS TO BOARD SELECTOR" ,进入后的界面如下

    • 在首次或者每隔一段时间启动STM32CubeMX时,软件都会从服务器更新数据,等待即可自动完成

    • 如果软件运行过,且不需要更新的话,直接Cancel也是没问题的,可后面手动点击首页的Update更新,不再赘述

  • 右侧列表是选型列表

    • 由于我们大多数开发,都是基于某型的MCU或者MPU(截至当前ST的产品线)进行自定义开发,除非基于官方开发板的项目,否则均不选择上述第二个按钮,我们直接选择第一个按钮创建基于芯片的新项目即可

    • 当然我还要在此提一句,如果有需要参考官方开发板设计的需求,那么查询你所要的单片机型号是否有开发板,如果存在,右侧列出并选择:

  • 具体的ST开发板产品线如下:

  • 一般我们可以选择根据单片机查找开发板

  • 勾选需要的型号,例如我选择了F4系列后,右边列表选择F411开发板,则上方会出现详细资料,这和官网的资料一致,免去了官网查找的麻烦

  • 此处提及几个要点

    1. 点击列表左侧的⭐,可以进行收藏,收藏在左上角的Board Filters下方的星星处,一旦有了收藏后,星星即变为蓝色,可在里面收藏常用型号的芯片和开发板

    2. Docs选项卡中有资料:BOM、原理图、手册等等,右侧是Datasheet,按需下载

    3. 下载后的文件都在用户目录下,直接复制到资源管理器(此电脑)地址栏即可

%userprofile%/STM32Cube/Repository


那么经过这一番操作,我们基本熟悉了软件的大致布局,我们接下来切换到单片机选择部分,有两种方式:

  • 当前页面左上角直接切换

我想,经过对比,你一定看出了这三个按钮的关系其实是一致的,在当前页面直接选择

此按钮也可

  • 我们也可以关闭当前页面,恢复到初始页面重新选择

单片机工程

单片机工程创建
  1. 那么经过一堆废话,到了最常用的部分,点击进入后,填入单片机型号

  2. 直接双击列表中型号或选中后右上角启动均可

  3. 创建工程后,我们开始配置工作

单片机工程配置界面
  1. 上面一行是几大核心配置,左侧一列是具体外设及GPIO等配置

  2. 时钟配置

  3. 工程配置

单片机工程具体配置

此处我们还是以最简单的点灯为例子,进行从系统时钟、调试口、GPIO等的配置

引脚功能配置
  1. RCC,按需开启外部或内部时钟,开启后,右侧引脚会有变化,请自行探索,而配置下方是详细配置

  2. 我们可以选择最常见的SWD调试接口

  3. 例如我们选择PA1作为从电源 -> 电阻 -> LED -> IO灌入的接法,那么点击PA1引脚,选择GPIO_Output

  4. GPIO默认输出低电平,驱动LED一般配置为推挽输出,所以无上拉也无下拉,最后的亮灭由程序决定

    • 最下面还有个自定义标签功能User Label,可以给IO自定义名称,也就相当于写在头文件中的 "#define"
系统时钟配置

我们已经在RCC页面配置了内部或者外部时钟,那么我们就要在时钟配置界面进行各部分的详细配置

在选择为HSE后,则外部时钟源高亮,内部未选择,则没有连接

将这里的8改成电路上的实际外部晶振数值,一般系统的总线频率我们都配置为最大,这样获得更好的效果

  • 这里我们先不要管其他外设的时钟频率,先输入想要的总线时钟,回车后软件会自动配置,最后只需要检查即可

  • 如果时钟配置有问题,会提示,我们点击OK尝试

接着,后面的外设就都被自动配置完成

如果对个别外设有特殊需求,再手动修改,否则即完成

到此,MCU配置相关的部分已经基本完成,下面进行的是工程配置

工程配置
Project
  • 工程名称:
    • 规范地按照你的习惯起名字,注意不要有中文符号和空格等问题
  • 工程位置:
    • 位置自行选择,还是中文路径的问题,为避免编译器问题,请养成良好习惯
  • 编译工具的配置:
    • 大多数初学者入门包括很多工程师必不可少都在用Keil
      • 现在STM32推出了他们的CLT包支持VSCode官方插件直接编译调试,还有STM32CubeIDE等
    • 这里我们还是选大多数人用的Keil,版本按照安装的版本,我的是V5最新版,选择大版本V5即可

其他部分保持默认

Code Generator

这里修改两处:

  1. 我们只需要复制工程所需要的库即可
    怎么理解这句话,比如我们没有用到USB、IIC、串口等等的功能,但在配置页面勾选了一些功能,那么在这里勾选了All used libraries... 的话,就会使得工程目录内存较大,可以选 ++仅使用必要的库++
  2. 勾选生成官方的.c和.h库
Advanced Settings

里面有些高级配置,比如使用LL库在这里配置,还有

一些寄存器调用等高级配置,若你需要配置它的时候,说明你已经不再适合读这篇文章了

生成

最后,点击右上角大大的按钮,创建工程

  • 若首次配置这个型号MCU的工程,因为没有HAL库的Firmware,故提示需要下载。
    Yes即可
  • 登录ST账号
  • 登录后在Help最后一项中可以看到
  • 等待下载、安装完成

  • 最后弹出此对话框表示成功

    Open Folder 表示打开工程文件夹
    里面是STM32CubeMX的工程文件: xxx.ioc和Keil工程文件等,可以在此添加其他文件和版本管理

Open Project 表示选择直接用Keil打开工程,接下来直接写代码更方便


下篇博客将会分享使用官方CLT配合VSCode的生成和代码编辑方法

相关推荐
qq_401700415 分钟前
通用外设驱动模型(四步法)
stm32
Nice__J3 小时前
智芯Z20K144x MCU开发之时钟架构
单片机·嵌入式硬件·架构
DIY机器人工房5 小时前
[6-1] TIM定时中断 江协科技学习笔记(45个知识点)
笔记·科技·stm32·单片机·学习
602寝室长7 小时前
RT-THREAD RTC组件中Alarm功能驱动完善
stm32·单片机·rt-thread·rtos
憧憬一下8 小时前
stm32之USART
stm32·单片机·嵌入式硬件·串口·嵌入式·usart
又熟了11 小时前
WDG看门狗(独立看门狗和窗口看门狗)
c语言·stm32·单片机·嵌入式硬件
△曉風殘月〆17 小时前
C#串口通信
嵌入式硬件·c#·串口
我不是帅戈21 小时前
STM32+安信可Ai-WB2-12F连接阿里云物联网平台
stm32·物联网·阿里云·云计算·安信可
教练、我想打篮球21 小时前
04 基于 STM32 的时钟展示程序
stm32·单片机·嵌入式硬件