目录

  • 一、概述
  • 二、Pinout&Configuration
  • 2.1 开启debug模式
  • 2.2 设置时钟源
  • 2.3 设置LED的GPIO
  • 2.4 查看调整配置
  • 三、Clock Configuration
  • 四、Project Manager
  • 五、查看工程


一、概述

本文主要是通过实现闪灯,记录下STM32CubeMX的基本使用方法。

File–新建工程–选择芯片,之后是这个样子:

cubemx开启dsp_cubemx开启dsp


下面开始进行配置。

二、Pinout&Configuration

2.1 开启debug模式

首先需要开启debug模式,避免忘记。第一次使用没有修改这里,结果程序下载一次,再也下载不进去了。找了半天原因,才发现是这里。

cubemx开启dsp_stm32_02

2.2 设置时钟源

通常使用,都会使用外部晶振。比如M3核,经常是8M + 32.768K,所以这里直接选择外部晶振:

cubemx开启dsp_stm32_03

2.3 设置LED的GPIO

根据原理图,选择对应的IO口。在上面单击,会出现该IO支持的功能。因为是点灯,选择了通用输出:

cubemx开启dsp_原理图_04


选完IO模式后,可以在IO上右键,选择Enter User Label:

cubemx开启dsp_原理图_05


之后输入自定义的命名,我通常选择和原理图保持一致:

cubemx开启dsp_stm32_06

2.4 查看调整配置

现在调试模式、时钟源、IO选择都已经配好,可以查看状态:

cubemx开启dsp_晶振_07


左侧选择需要详细设置的外设,比如GPIO。

中间部分可以进一步配置IO的上下拉、速度、初始电平等。

右侧选择System view,可以看到状态都是对钩,则没有什么大的遗漏。

三、Clock Configuration

点击上方的Clock Configuration,进到如下界面:

cubemx开启dsp_原理图_08


这里目的是配下时钟树,不同系列有所差异,我这里是STM32F103RC:

cubemx开启dsp_原理图_09

四、Project Manager

这里主要是设置下生成工程的名称、路径,然后根据自己使用Keil还是IAR进行选择。

cubemx开启dsp_cubemx开启dsp_10


选择界面左侧中间的Code Generator,这里要多勾选一项,这样每一个外设,都会有单独的.c和.h文件。比如gpio.c/gpio.h、can.c/can.h。

至于上面的copy all还是copy necessary,自己选择就行。

勾选完,点击右上方的GENERATE CODE:

cubemx开启dsp_原理图_11


等待一会,程序生成完会弹出对话框。按照自己的习惯去打开工程就可以了。

cubemx开启dsp_cubemx开启dsp_12

五、查看工程

查看GPIO的初始化函数,这里对应设置时选择的电平。比如LED低电平亮,那就可以配置成高电平。初始化完成以后,LED是灭的状态。

cubemx开启dsp_原理图_13


生成的工程,main函数主循环是空的:

cubemx开启dsp_初始化_14


根据需求添加程序就可以了,这里只是单纯的闪灯:

HAL_Delay(300);
HAL_GPIO_WritePin(LED_polo6_GPIO_Port,LED_polo6_Pin,GPIO_PIN_RESET);
HAL_Delay(300);
HAL_GPIO_WritePin(LED_polo6_GPIO_Port,LED_polo6_Pin,GPIO_PIN_SET);

cubemx开启dsp_初始化_15