STM32CubeMX系列教程0:创建工程
文章目录1、创建工程2、配置外设开启SWD调试功能使能外部时钟选择GPIO配置GPIO3、配置时钟系统4、工程输出设置工程设置源码输出设置生成源码工程5、写入用户代码编译下载 STM32Cube 是一个全面的软件平台,包括了ST产品的每个系列。平台包括了STM32Cube 硬件抽象层(一个STM32抽象层嵌入式软件,确保在STM32系列最大化的便携性)和一套的中间件组件(RTOS, USB, F
STM32Cube 是一个全面的软件平台,包括了ST产品的每个系列。平台包括了STM32Cube 硬件抽象层(一个STM32抽象层嵌入式软件,确保在STM32系列最大化的便携性)和一套的中间件组件(RTOS, USB, FatFs, TCP/IP, Graphics, 等等).
- 直观的STM32微控制器的选择和时钟树配置
- 微控制器图形化配置外围设备和中间件的功能模式和初始化参数
- C代码生成项目覆盖STM32微控制器的初始化符合IAR™,Keil的™和GCC编译器。
使用STM32CubeMX工具创建工程,能够及其方便的配置芯片的各种外设与功能。加快项目的开发进程
这里以配置一个LED灯的闪烁为例,进行讲解
1、创建工程
打开STM32CubeMX软件
- 新建工程。
- 加载工程。
- 选择一个MCU。
直接点击选择一个MCU。
通过搜索,或筛选,找到所需要的MCU型号,这里我使用的是STM32F411CEU6。点击选中,上方会显示所选芯片的信息。双击所选芯片进入工程。
2、配置外设
进入工程配置界面
开启SWD调试功能
打开System Core选项卡,单击SYS选项。
选择Debug设置为Serial Wire。选中同时,右侧单片机上会显示所占用的引脚以及功能。
使能外部时钟
如果单片机系统中有外部时钟则进行设置,如果没有可跳过。
打开System Core选项卡,单击RCC选项。
选择HSE(外部高速时钟)为Crystal/Ceramic Resonator(晶振/陶瓷谐振器)
选择LSE(外部低速时钟)为Crystal/Ceramic Resonator(晶振/陶瓷谐振器)
选择GPIO
做右侧单片机上,选择LED灯所连接的IO端口。左键单击,选择输出模式.
设置为输出模式后,在IO上右键单击,设置用户标签,设置为LED
配置GPIO
打开System Core选项卡,打开GPIO选项,单片机上所有被占用的引脚都在这里进行配置,选中所要配置的引脚.
- GPIO上电后的默认输出电平.
这里根据需要设置,我这里设置为高电平,上电时LED灯熄灭. - GPIO输出模式.(推挽输出/开漏输出模式)
这里我设置为推挽输出模式. - GPIO上拉或下拉设置.(浮空,上拉,下拉)
这里我设置为上拉. - GPIO输出速度.(低速,中速,高速,非常高)
默认即可. - GPIO用户标签.
可以在右侧MCU上设置,也可以在这里进行设置.
3、配置时钟系统
点击顶部的时钟配置.
如果在前一步使能了外部高速时钟和外部低速时钟,这里才可进行以设置。
分别填入MCU系统所使用的时钟频率.
外部低速时钟一般都为32.768KHz,这里默认即可.
外部高速时钟需要根据实际使用晶振频率进行设置.
选择外部时钟源.在HCLK处输入推荐时钟频率,点击回车,即可自动完成配置.
设置推荐时钟频率100M.点击回车,自动完成配置.
4、工程输出设置
工程设置
点击顶部工程管理,设置工程名称,设置工程保存路径.
注意:工程路径中不允许含有中文.否则会输出错误
选择开发环境,如果使用keil开发,则选择MDK-ARM.
源码输出设置
点击左侧Code Generator.选中仅复制需要的库,否则生成的工程会很大.
选择将外设配置为单独的.c和.h文件.
生成源码工程
点击右上角生成按钮
点击即可使用keil打开工程.
5、写入用户代码
进入main.c文件.
在#include "main.h"上右键进入main.h中.
往下翻,可以找到之前在STM32CubeMX中定义的IO引脚标签.
回到main.c,找到主函数入口,找到主循环.
在code begin与code end直之间写入用户代码.否则在STM32CubeMX中修改配置在生成源码时,会清空code begin与code end之外的代码.
HAL_GPIO_TogglePin(LED_GPIO_Port,LED_Pin); //取反GPIO
HAL_Delay(500); //软件延时500ms
程序功能是LED灯每隔500ms改变一次状态.
编译
左上角有两个按钮,分别是
- 编译目标文件(编译快);
- 编译所有文件(编译慢);
一般每次生成工程后的第一次编译工程使用编译所有文件,后面年只需要编译目标文件即可.这里我们点击2
显示如下信息就说明编译完成,并且没有报错与警告.
下载
下载方法请进入STM32下载方法章节查看.
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)