首页 > 其他分享 >STM32之CubeMX新建工程操作(十八)

STM32之CubeMX新建工程操作(十八)

时间:2025-01-19 09:33:18浏览次数:3  
标签:工程 引脚 芯片 十八 配置 STM32CubeMX 如下 STM32 CubeMX

STM32F407 系列文章 - STM32CubeMX(十八)


目录

前言

一、STM32CubeMX

二、新建工程

​编辑

1.创建工程

2.选择芯片型号

3.Pinout引脚分配

1.SYS配置

2.RCC配置

3.定时器配置

4.GPIO引脚配置

5.中断配置

6.通讯接口配置

7.插件Middleware配置

4.Clock时钟树配置

5.工程管理ProjectManage

1.项目工程配置

2.代码生成配置

3.代码生成配置

三、生成工程

总结


前言

STM32CubeMX源自意法半导体,旨在通过减少开发工作量、时间和成本,从而最大限度地复用软件并缩短创建目标系统的时间,让开发人员的生活更轻松。通过STM32CubeMX图形软件配置工具生成单片机工程代码,本文主要介绍如何在CubeMX上新建一个项目工程。


一、STM32CubeMX

关于STM32CubeMX图形化工具开发介绍 - CSDN博客STM32CubeMX软件的介绍,包括其功能特性、下载安装流程、软件配置操作、以及相关出现的问题请参考上一篇博文STM32CubeMX图形化工具开发介绍 - CSDN博客,里面有详细的介绍,这里在不作说明介绍。

二、新建工程

在window桌面打开STM32CubeMX软件,如下所示。

1.创建工程

打开软件后,显示如下,在New Project处,点击Start My from MCU开始选择一款处理器芯片建立一个工程。

出现如下提示,等待下载完即可。

2.选择芯片型号

在上面new Project界面上,输入所用到的处理器芯片型号进行搜索,双击搜索结果中的目标芯片型号,在下方MCUs List: Item 处,即可进入配置。

处理器芯片配置界面如下。

3.Pinout引脚分配

在上图处理器芯片配置界面上,选择Pinout & configuration进行配置,Pinout配置主要包括System Core系统核配置、Analog模拟量配置、Timer定时器配置、Connectivity通讯接口配置、Multimedia多媒体配置、Middleware第三方插件配置等等,不一一举例,如下所示。

1.SYS配置

在System Core上,点击SYS配置,在Debug调试选项上,选择JTAG 5 pin5模式,然后定时器基准源选择系统定时器,具体设置如下所示。

2.RCC配置

在System Core上,点击RCC配置,在HSE外部高速时钟源上选择Crystal/Ceramic Resonator外部晶振模式,具体设置如下所示。

3.定时器配置

根据自己的需求,可配置可不配置,如要配置的话,可参考如下,关于其参数设置,最好根据芯片手册以及自己的需求进行设置。

4.GPIO引脚配置

根据自己的需求,可配置可不配置,如要配置的话,可参考如下,关于其参数设置,最好根据芯片手册以及自己的需求进行设置。

5.中断配置

根据自己的需求,可配置可不配置,不配置系统会默认,如要配置的话,可参考如下,关于其参数设置,最好根据芯片手册以及自己的需求进行设置。

6.通讯接口配置

根据自己的需求,可配置可不配置,如要配置的话,可参考如下,关于其参数设置,最好根据芯片手册以及自己的需求进行设置。这里提供的是前面的一篇博文​​​​​​​网络通讯之STM32CubeMX实现LWIP项目设计-CSDN博客的设置方法,可进行参考。

7.插件Middleware配置

在Middleware选项区,cubeMX提供了一些第三方插件,如FATFS文件系统、freertos实时操作系统、lwip等等,用户可以根据自己的需求,是否使用的到,如有需要, 可参考如下前面的一篇博文网络通讯之STM32CubeMX实现LWIP项目设计-CSDN博客的设置方法。关于其参数设置,最好根据芯片手册以及自己的需求进行设置。

4.Clock时钟树配置

根据F407芯片手册,处理器最大时钟为168MHz,根据需求我们选择外部晶振时钟为8MHz,然后在cubeMX界面上完成工程时钟书树的配置,结果如下,我们配置外部时钟为8MHz,分频系数为8,倍频系数为320,处理器的时钟为160MHz(不超过168MHz),APB1分频系数为4,APB2分频系数为2,得出APB1为40MHz,APB2为80MHz,具体设置如下所示。

注意在配置外部晶振时,要先Pinout引脚分配界面上,完成RCC配置,并在HSE外部高速时钟源上选择Crystal/Ceramic Resonator外部晶振模式。

5.工程管理ProjectManage

进入工程管理页面Project Manage,如下所示。

1.项目工程配置

在工程管理Project Manage页面,选择Project选项,在里面填写工程名称、存放目录、开发环境、堆栈大小、固件包等等信息,具体设置如下所示。

2.代码生成配置

在工程管理Project Manage页面,选择Code Generator选项,完成生成工程代码的一些功能配置,具体设置如下所示。

3.代码生成配置

在工程管理Project Manage页面,选择Advanced Settings选项,可以查看之前的设置生成的HAL驱动文件、以及使用到时钟、GPIO引脚、通讯接口或外设功能初始化函数,具体设置如下所示。

至此,已完成新建工程所需全部配置。

三、生成工程

处理器芯片配置界面,选择GENERATE CODE用来生成工程代码,如下所示。

点击生成工程代码按钮后,会弹出如下选项,根据自己的习惯选择即可。


总结

下面提供的代码,基于STM32F407ZGT芯片编写,可直接在原子开发板上运行,也可运行在各工程项目上,但需要注意各接口以及相应的引脚应和原子开发板上保持一致。

相应的代码链接:单片机STM32F407-Case程序代码例程-CSDN文库

标签:工程,引脚,芯片,十八,配置,STM32CubeMX,如下,STM32,CubeMX
From: https://blog.csdn.net/weixin_47006346/article/details/145226966

相关文章

  • STM32单片机学习记录(1.17)
    一、STM32        10.3- I2C通信外设        1. I2C外设简介        (1)STM32内部集成了硬件I2C收发电路,可以由硬件自动执行时钟生成、起始终止条件生成、应答位收发、数据收发等功能,减轻CPU的负担;        (2)支持......
  • STM32单片机的学习总结
    从计算机基础、寄存器知识、汇编指令、中断以及各外设驱动的开发,单片机底层经过这段时间的学习做一个总结。计算机组成计算机由输入设备、输出设备、控制器、运算器、存储器组成,存储器分为外部存储器、内部存储器、高速缓存、寄存器,在单片机底层开发中,主要使用寄存器对某一地......
  • 【STM32-学习笔记-7-】USART串口通信
    文章目录USART串口通信Ⅰ、硬件电路Ⅱ、常见的电平标准Ⅲ、串口参数及时序Ⅳ、STM32的USART简介数据帧起始位侦测数据采样波特率发生器Ⅴ、USART函数介绍Ⅵ、USART_InitTypeDef结构体参数1、USART_BaudRate2、USART_WordLength3、USART_StopBits4、USART_Parity5、USART......
  • 【STM32-学习笔记-8-】I2C通信
    文章目录I2C通信Ⅰ、硬件电路Ⅱ、IIC时序基本单元①起始条件②终止条件③发送一个字节④接收一个字节⑤发送应答⑥接收应答Ⅲ、IIC时序①指定地址写②当前地址读③指定地址读Ⅳ、MPU6050---6轴姿态传感器(软件I2C)1、模块内部电路2、寄存器地址3、软件模拟IIC①......
  • 【STM32-学习笔记-9-】SPI通信
    文章目录SPI通信Ⅰ、SPI通信概述1、SPI技术规格2、SPI应用3、硬件电路移位示意图Ⅱ、SPI时序基本单元①、起始条件②、终止条件③、交换一个字节(模式0)④、交换一个字节(模式1)⑤、交换一个字节(模式2)⑥、交换一个字节(模式3)Ⅲ、SPI时序①、发送指令②、指定地址写③、指......
  • 单片机毕业设计之stm32单片机物联网远程心率血氧MAX30102健康监控系统,老人健康监测+行
    一、设计简介        本项目旨在利用STM32F103C8T6微控制器为核心,构建一个实时人体健康监测系统。该系统集成了多种传感器和模块,能够全面、准确地监测并显示人体的关键健康数据,同时提供异常报警功能,还通过蓝牙通信功能实现了数据的远程传输和记录,方便用户随时了解自己......
  • Springboot(五十八)SpringBoot3使用Redisson实现接口的限流功能
    这部分我记录一下我使用redission实现接口限流的全过程。关于自定义注解,请移步《SpringBoot(二十六)SpringBoot自定义注解》一:redission自定义限流注解主要流程对接口实现限流,主要使用了Redisson提供的限流API方法;使用很简单:第一步:声明一个限流器; RRateLimiter rRateLim......
  • STM32CUBEIDE编译出现elf has a LOAD segment with RWX permissions警告
    问题:STM32CubeIDE更新到1.15.0后在链接时会warning:xxx.elfhasaLOADsegmentwithRWXpermissions。解决办法:设置Project->Properties->C/C++Build->Settings->ToolSettings->MCUGCCLinker->Miscellaneous->Add…添加:-Wl,–no-warn-rwx-segment然后重新编......
  • STM32 FreeRTOS 事件标志组
    目录事件标志组简介基本概念1、事件位(事件标志)2、事件组事件组和事件位数据类型事件标志组和信号量的区别事件标志组相关API函数介绍事件标志组简介基本概念当在嵌入式系统中运行多个任务时,这些任务可能需要相互通信,协调其操作。FreeRTOS中的事件标志组(EventFlag......
  • STM32学习笔记—SPI总线通信原理与实验
    SPI总线通信原理SPI总线简介SPI接口是Motorola首先提出的全双工三线同步串行外围接口,采用主从模式(MasterSlave)架构;支持多slave模式应用,一般仅支持单Master。时钟由Master控制,在时钟移位脉冲下,数据按位传输,高位在前,低位在后(MSBfirst);SPI接口有2根单向数据线,为全双工通信,......