【学习笔记】| 03 - 使用STM32CubeMX新建工程

使用STM32CubeMX新建工程是一个相对直观的过程,主要涉及到选择芯片型号、配置外设、时钟系统、GPIO引脚等,并最终生成工程代码。以下是一个详细的步骤指南:

一、打开STM32CubeMX并新建工程

  1. 启动STM32CubeMX
    • 打开STM32CubeMX软件。
    • 如果是第一次使用,可能需要检查软件更新和安装对应的固件库。

在这里插入图片描述
2. 新建项目

  • 点击菜单栏的“File” > “New Project…”来新建一个工程。

在这里插入图片描述

  • 在弹出的界面中,可以通过搜索栏输入芯片型号或系列来快速定位并选择目标芯片。
  • 双击选择的芯片型号后,点击“Start Project”开始新建工程。

在这里插入图片描述

二、配置工程设置

  1. 工程名与路径

    • 在新建工程时,需要输入工程名称和选择工程保存的路径。
    • 注意:工程名称和路径都不应包含中文或特殊字符,以避免编译错误。
  2. 编译器选择

    • 在新建工程时,还需要选择使用的编译器种类及版本,如MDK(Keil)、IAR等。

在这里插入图片描述

三、配置外设与引脚

  1. 时钟系统配置
    • 点击“System Core”下的“RCC”,配置HSE(高速外部时钟)和LSE(低速外部时钟)等。
    • 进入“Clock Configuration”界面,配置PLL(相位锁定环)、SYSCLK(系统时钟)、AHB(高级高性能总线)、APB1和APB2等时钟分频系数。
    • 此处用的配置的为HSE(高速外部时钟),时钟频率配置为180MHz

在这里插入图片描述

  • 配置系统时钟,按步骤为:“Clock Configuration” > “Input frequency” > “HSE” > “PLLCLK” > "HCLK(MHz),按回车键进行自动配置。

在这里插入图片描述

  1. GPIO引脚配置
    • 点击“Pinout & Configuration”选项卡,在引脚图中找到需要配置的引脚。
    • 点击引脚,在弹出的配置窗口中设置引脚的模式(如GPIO_Output)、速度、上下拉等参数。
    • 如果需要配置引脚为复用功能(如USART、SPI等),则需要在“Function”中选择相应的复用功能。
    • 配置下载引脚

在这里插入图片描述

四、生成工程代码

  1. 检查配置

    • 在生成代码前,仔细检查所有配置是否正确。
  2. 生成代码

    • 点击工具栏上的“GENERATE CODE”按钮生成工程代码。
    • 在弹出的界面中,可以选择生成代码时的一些额外选项,如是否复制所有库文件到工程目录等。

在这里插入图片描述

五、使用IDE进行开发

  1. 打开项目

    • 使用STM32CubeIDE或其他支持的IDE打开生成的工程代码。
  2. 编写用户代码

    • 在IDE中,找到main.c文件或其他用户代码文件。
    • /* USER CODE BEGIN X *//* USER CODE END X */之间的区域编写或修改用户代码。
  3. 编译与调试

    • 使用IDE的编译功能编译工程代码。
    • 如果编译无误,可以使用IDE的调试功能进行程序调试。

六、注意事项

  • 在使用STM32CubeMX时,请确保软件和固件库都是最新版本,以获得最佳的支持和性能。
  • 在配置引脚和时钟系统时,请仔细参考STM32的参考手册和数据手册,以确保配置的正确性。
  • 在编写用户代码时,请遵循良好的编程习惯和代码规范,以提高代码的可读性和可维护性。

通过以上步骤,您就可以使用STM32CubeMX成功新建一个工程,并进行后续的开发工作了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/51126.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FPGA实验6: 有时钟使能两位十进制计数器的设计

一、实验目的与要求 1.. 熟练掌握使用原理图设计较复杂电路; 2. 学习原理图设计中总线的表示以及使用方法。 二、实验原理 运用Quartus II 集成环境下的图形设计方法设计有时钟使能的两位十进制计数器。进行波形仿真和分析、引脚分配并下载到实验设备上进行功能…

[ECharts] There is a chart instance already initialized on the dom. 已存在图表,渲染重复

报错:已存在图表,渲染重复 解决: 在合适的时机执行 dispose 方法即可 // echarts 全局存入 实例 let myChart: any;// 在你的 initChart 初始化 Echarts 方法中 先执行清理方法 const initChart () > {// 执行清理方法然后初始化if(myChart){cons…

AndroidStudio 开发环境搭建

文章目录 AndroidStudio 开发环境搭建JDK 下载与安装,配置环境变量JDK1.8 下载安装配置环境变量新建JAVA_HOME编辑Path 下载AndroidStudio最新版本历史版本先安装JDK,后启动AS以管理员身份运行打开解决双击打不开的问题Error:你的主机中的软件中止了一个…

Coggle数据科学 | 大模型技术内参:39 种提示工程 在 29 种 NLP 任务精度对比

本文来源公众号“Coggle数据科学”,仅用于学术分享,侵权删,干货满满。 原文链接:大模型技术内参:39 种提示工程 在 29 种 NLP 任务精度对比 大语言模型(LLMs)在许多不同的自然语言处理&#x…

Linux网络-netstat命令

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注我,我尽量把自己会的都分享给大家,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 Linux服务器作为一个常用的网络服务器,主要的作用就是向客户端提供网络…

1143. 最长公共子序列(详细版)

目录 dp解法: 1.状态代表什么: 2. 状态转移方程 3.初始化 3. so为什么要这样? 代码实现: 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0…

从小白到架构师:万字长文 | 社交媒体应用系统设计

移动互联网时代,社交媒体应用彻底改变了我们联系和共享信息的方式。这些平台在幕后处理庞大的用户群、数据存储和实时交互。 在本文中,我们将深入探讨如何设计一个可扩展且高性能的社交媒体应用系统。我们将探讨关键组件、流程图、功能需求以及容量规划…

科普文:分布式数据一致性协议Paxos

1 什么是Paxos Paxos协议其实说的就是Paxos算法, Paxos算法是基于消息传递且具有高度容错特性的一致性算 法,是目前公认的解决分布式一致性问题最有效的算法之一。 Paxos由 莱斯利兰伯特(Leslie Lamport)于1998年在《The Part-Time Parliament》论文中首次公 开&…

Gitops-Argo-Cli安装与使用

一、安装Argo-Cli工具 Release v2.9.21 argoproj/argo-cd GitHub **选择合适的符合你操作系统以及CPU架构的二进制文件 #依v2.9.21-X86-64-Linux操作系统为例 wget https://github.com/argoproj/argo-cd/releases/download/v2.9.21/argocd-linux-amd64 #添加执行权限并且移…

论文中的流程图参考图片

写论文的时候,在绘制流程图时,一直纠结n是大写还是小写,用不用斜体,号两边要不要空格。今天找到了一张标准的流程图来参考。图片来自 Zhi-Chang Ba et al, Combination of DCE-MRI and NME-DWI via Deep Neural Network for Predi…

虚拟机复制后网络不可用,报错“network.service - LSB: Bring up/down networking”

查询IP地址,eth33 没有显示IP地址 尝试重启,有报错,并且有提示,按照提示执行下看看 解决办法 chkconfig NetworkManager offsystemctl disable NetworkManager.serviceservice NetworkManager stopservice network restart 之后检…

边缘计算网关项目(含上报进程、32Modbus采集进程、设备搜索响应进程源码)

目录 边缘层 架构说明 包含知识点 数据上报进程 功能描述 功能开发 上报线程 数据存储线程 指令处理线程 项目源码 上报模块.c代码: 上报模块Makefile代码: STM32采集模块.c代码 设备搜索响应模块Linux部分.c代码 设备搜索响应模块Qt端代码.h …

C语言画蜡烛图

GPT-4o (OpenAI) 在C语言中,绘制蜡烛图(Candlestick Chart)不是直接的任务,因为C语言本身不包含高级图形绘制库。然而,可以通过某些图形库来完成这项任务,例如使用GTK、SDL、OpenGL等。 以下是通过GTK库绘…

Hive3:Hive初体验

1、创建表 CREATE TABLE test(id INT, name STRING, gender STRING);2、新增数据 INSERT INTO test VALUES(1, 王力红, 男); INSERT INTO test VALUES(2, 钉钉盯, 女); INSERT INTO test VALUES(3, 咔咔咔, 女);3、查询数据 简单查询 select * from test;带聚合函数的查询 …

论文写作之latex配置(VSCODE+TEXT LIVE)

1.overleaf 初学者学习latex可以用这个练习,可以在线编辑十分方便,但是编译时间受限制 网站:https://www.overleaf.com/project 2.Tex live 选择一个.iso文件下载 网站:Index of /CTAN/systems/texlive/Images/ 下载成功&am…

2024第三届钉钉杯大学生大数据挑战赛【A题】完整分享

2024第三届钉钉杯大学生大数据挑战赛已经开赛,小编给大家带来非常实用的助力【A题】完整,(看图片下方的说明),资料预览: 微信公众号

进阶篇,内附代码:锂电池二阶模型-离线与在线参数辨识

锂电池二阶模型-在线参数辨识 背景二阶等效电路模型介绍二阶模型的离线参数辨识二阶模型的RLS表达式递推代码已知问题背景 锂电池一阶戴维南等效模型的参数辨识方法,已经在前面两期详细地讲解了一轮。 一阶模型-离线参数辨识一阶模型-在线参数辨识本期继续讲解一下如何进行二…

多线程初阶(三)- 线程案例

目录 1.单例模式 (1)饿汉模式 (2)懒汉模式 前言 懒汉式1-synchronized加锁 懒汉式2-双重if保障 懒汉式3-volatile防止误判 2.生产者消费者模型 (1)阻塞队列 (2)优点 解耦…

鸿蒙OpenHarmony Native API【结构体】 头文件

OH_Drawing_BitmapFormat Overview Related Modules: [Drawing] Description: 结构体用于描述位图像素的格式,包括颜色类型和透明度类型 Since: 8 Version: 1.0 Summary Public Attributes Public Attribute NameDescriptioncolorFormatalphaFormat De…

PlantUML学习笔记-嵌入式系统设计常用图例

在嵌入式系统设计过程中,需要使用一些图例对系统框架及业务流程进行说明,以便于多人协同开发及后期的系统维护,提高团队开发效率。 1. 嵌入式设计开发常使用的图例: 1.1 用例图(Use Case Diagram) 用例图…