STM32 HAL库开发学习1.STM32CubeMX 新建工程

STM32 HAL库开发学习1.STM32CubeMX 新建工程

  • 一、 STM32 CubeMX 下载
  • 二、CubeMX 功能介绍
    • 1. 固件包路径设置
    • 2. 新建工程
  • 三、创建项目实例
    • 1. 新建项目
    • 2. GPIO 管脚设置
    • 3. GPIO 窗口配置
    • 4. 调试设置
    • 5. 时钟配置
    • 6. 项目管理
      • (1)项目信息
      • (2)代码生成规则
      • (3)高级设置
    • 7. 生成代码
  • 四、烧录设置

一、 STM32 CubeMX 下载

到意法半导体官方下载 STM32 CubeMax软件并安装。

二、CubeMX 功能介绍

1. 固件包路径设置

点击 Help-Updater Settings …
在这里插入图片描述
在这里插入图片描述

2. 新建工程

新建工程有三种方式:

  1. 指定 MCU
  2. 指定开发板
  3. 加载示例

三、创建项目实例

1. 新建项目

本系列文章使用野火的 STM32F407IGT6 骄阳开发板,这里选择从MCU创建项目:
在这里插入图片描述
等待下载资源完成,出现界面:
在这里插入图片描述
输入芯片型号: 407IGT6,双击右下侧出现的列表项。

2. GPIO 管脚设置

左侧菜单点击 System Core、GPIO:
在这里插入图片描述
查看 《野火_F407骄阳原理图_V1.0_2020_10_10.pdf》原理图,找到LED引脚:
在这里插入图片描述
分别为:

  • PA15
  • PE2
  • PG15
  • PB8
    按下图搜索引脚,并设置为GPIO_Output:
    在这里插入图片描述

3. GPIO 窗口配置

设置为低电平、推挽输出、不上拉不下拉、低速率:
在这里插入图片描述

4. 调试设置

在这里插入图片描述

5. 时钟配置

这里使用默认的时钟配置。
在这里插入图片描述

6. 项目管理

(1)项目信息

如下图所示,IDE选择MDK-ARM。
在这里插入图片描述

(2)代码生成规则

在这里插入图片描述

(3)高级设置

指定库:
在这里插入图片描述
后面的 Generated Function Calls可以设置可见性、调用顺序等。

7. 生成代码

点击GENERATE CODE,生成代码需要先登陆并下载库,没有账号直接创建即可。
在这里插入图片描述
等待下载完成。
生成成功后,点击Open Project。

KEIL打开后会提示安装芯片包,按提示操作即可。

四、烧录设置

使用 CMSIS-DAP 连接烧写口:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Qt的定时器应用案例 || Qt的图片添加显示

目录 1.ui界面 2.头文件 3.cpp源文件 4.main文件 5.关于ui_mytimerevent.h的代码编译错误 6.图片的添加展示方式 7.结果展示 8.参考文章 1.ui界面 2.头文件 #ifndef MYTIMEREVENT_H #define MYTIMEREVENT_H#include <QMainWindow> #include <QTime> //#in…

Linux中的常用基本指令(下)

Linux常用基本指令 Linux中的基本指令12.head指令13.tail指令简单解释重定向与管道(重要) 14.date指令(时间相关的指令)15.cal指令(不重要)16.find指令(灰常重要&#xff09;17.grep指令(重要)18.which指令和alias指令19.zip/unzip指令&#xff1a;20.tar指令&#xff08;重要&…

元素「宽高比」完美适配的方案

在日常生活中&#xff0c;我们常常会看到视频或照片能够随着页面尺寸变化&#xff0c;按照自身宽高比进行缩放调整。这种效果是如何实现的呢&#xff1f; 可以通过 CSS 和 JavaScript 两种方式完成&#xff0c;其中 CSS 是比较推荐的方式&#xff0c;因为它能充分利用现代浏览…

Android笔记【12】脚手架Scaffold和导航Navigation

一、前言 学习课程时&#xff0c;对于自己不懂的点的记录。 对于cy老师第二节课总结。 二、内容 1、PPT介绍scaffold 2、开始代码实操 先新建一个screen包&#xff0c;写一个Homescreen函数&#xff0c;包括四个页面。 再新建一个compenent包&#xff0c;写一个displayText…

[极客大挑战 2019]HardSQL--详细解析

信息搜集 登录系统&#xff0c;有两个可能的注入点&#xff1a; 随便输一下看看传参类型&#xff1a; 都是GET型。 SQL注入 传参 usernameadmin’&password123 传参 usernameadmin&password123’ username和password传参&#xff0c;四种闭合方式只有单引号报错&a…

Ansible自动化一键部署单节点集群架构

自动化部署利器&#xff1a;Ansible 一键部署脚本 在现代IT基础设施管理中&#xff0c;Ansible以其简洁、强大的自动化能力脱颖而出。以下是精心打造的Ansible自动化一键部署脚本&#xff0c;旨在简化部署流程&#xff0c;提升效率&#xff0c;确保一致性和可靠性。 通过这个…

基于云模型的车辆行驶速度估计算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 基于云模型的车辆行驶速度估计算法matlab仿真。在智能交通系统中&#xff0c;车辆行驶速度的准确估计对于交通流量监测、安全预警、自动驾驶辅助等方面具有极为重…

C++知识整理day3类与对象(下)——赋值运算符重载、取地址重载、列表初始化、友元、匿名对象、static

文章目录 1.赋值运算符重载1.1 运算符重载1.2 赋值运算符重载 2.取地址重载2.1 const成员函数2.2 取地址运算符重载 3.类与对象的补充3.1 再探构造函数---初始化列表3.2 类型转换3.3 static成员3.4 友元3.5 内部类3.6 匿名对象3.7 对象拷贝时的编译器优化 1.赋值运算符重载 赋…

自然语言处理:基于BERT预训练模型的中文命名实体识别(使用PyTorch)

命名实体识别&#xff08;NER&#xff09; 命名实体识别&#xff08;Named Entity Recognition, NER&#xff09;是自然语言处理&#xff08;NLP&#xff09;中的一个关键任务&#xff0c;其目标是从文本中识别出具有特定意义的实体&#xff0c;并将其分类到预定义的类别中。这…

面试题-RocketMQ的基本架构、支持的消息模式、如何保证消息的可靠传输

相关问题 1、RocketMQ的基本架构是怎样的&#xff1f;请简述各组件的作用。 2、RocketMQ支持哪几种消息模式&#xff08;如点对点、发布/订阅&#xff09;&#xff1f;请简要说明它们的区别。 3、如何使用Java客户端实现一个简单的消息生产者和消费者&#xff1f; 4、RocketMQ…

【力扣】3274. 检查棋盘方格颜色是否相同

一、题目 给你两个字符串 coordinate1 和 coordinate2&#xff0c;代表 8 x 8 国际象棋棋盘上的两个方格的坐标。以下是棋盘格的参考图&#xff1a; 如果这两个方格颜色相同&#xff0c;返回 true&#xff0c;否则返回 false。坐标总是表示有效的棋盘方格。坐标的格式总是先字…

mysql 5.7安装及安装后无法启动问题处理

下载安装包&#xff0c;直接解压 配置环境变量 创建my.ini文件 [mysqld] #端口号 port 3306 #mysql-5.7.27-winx64的路径 basedirD:/soft/mysql57 #mysql-5.7.27-winx64的路径\data datadirD:/soft/mysql57/data #最大连接数 max_connections200 #编码 character-set-server…

2023年第十四届蓝桥杯Scratch国赛真题—推箱子

推箱子 程序演示及其源码解析&#xff0c;可前往&#xff1a; https://www.hixinao.com/scratch/creation/show-188.html 若需在线编程&#xff0c;在线测评模考&#xff0c;助力赛事可自行前往题库中心&#xff0c;按需查找&#xff1a; https://www.hixinao.com/ 题库涵盖…

级联树结构TreeSelect和上级反查

接口返回结构 前端展示格式 前端组件 <template><div ><el-scrollbar height"70vh"><el-tree :data"deptOptions" :props"{ label: label, children: children }" :expand-on-click-node"false":filter-node-me…

28.100ASK_T113-PRO Linux+QT 显示一张照片

1.添加资源文件 2. 主要代码 #include "mainwindow.h" #include "ui_mainwindow.h" #include <QImage> #include <QPixmap>MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow) {ui->setupUi(this);QIm…

基于PySpark 使用线性回归、随机森林以及模型融合实现天气预测

基于PySpark 实现天气预测与模型集成 在大数据分析与机器学习领域&#xff0c;Spark 提供了强大的计算能力和灵活的扩展性。本文将介绍如何利用 PySpark 完成以下任务&#xff1a; 1、数据预处理&#xff1a;清洗和编码天气数据。 2、特征工程&#xff1a;合并数值和分类特征…

【MySQL — 数据库基础】深入理解数据库服务与数据库关系、MySQL连接创建、客户端工具及架构解析

目录 1. 数据库服务&#xff06;数据库&#xff06;表之间的关系 1.1 复习 my.ini 1.2 MYSQL服务基于mysqld启动而启动 1.3 数据库服务的具体含义 1.4 数据库服务&数据库&表之间的关系 2. 客户端工具 2.1 客户端连接MySQL服务器 2.2 客…

各种类型无人机性能及优缺点技术详解

无人机系统种类繁多、用途广泛&#xff0c;且特点鲜明&#xff0c;致使其在尺寸、质量、航程、航时、飞行高度、飞行速度以及任务载荷等多方面都有较大差异。以下是对几种常见类型无人机的性能、优缺点技术的详细解析&#xff1a; 一、固定翼无人机 1.性能&#xff1a; 固定翼…

yolo辅助我们健身锻炼

使用软件辅助健身能够大大提升运动效果并帮助你更轻松地达成健身目标。确保每次锻炼都更加高效且针对性强,精确记录你的训练进度,帮助你更清晰地看到自己的进步,避免无效训练。 借助YOLO11的尖端计算机视觉技术,跟踪和分析锻炼变得异常简单。它可以无缝检测和监控多种锻炼…

Linux修改系统及终端命令行中的用户名

0、前言 最近捣鼓了一下一个很久之前的用过的ubuntu系统&#xff0c;但是之前随意设置了一个用户名&#xff0c;突发奇想地去修改了一下这个ubuntu系统的系统用户名&#xff0c;发现修改起来还是有些麻烦&#xff0c;并没有那种一键修改的选项&#xff0c;所以在这篇博客下面记…