STM32CubeMx的学习记录系列(2)- STM32G474RET6

news2024/12/23 20:22:09

最近有个小比赛,需要用到G4,不过找了一圈没有找到标准库的代码,只能使用hal,用CubeMX来生成配置代码。

图片

共同特点

ARDUINO Uno V3 扩展连接器®

ST morpho 扩展引脚接头,可完全访问所有 STM32 I/O

采用LQFP64或LQFP48封装的STM32微控制器

1 个与 ARDUINO 共享的用户 LED®

1 个用户和 1 个复位按钮

32.768 kHz 晶体振荡器

板连接器:

灵活的电源选项:ST-LINK USB V总线或外部来源

STM32Cube MCU软件包提供全面的免费软件库和示例

支持多种集成开发环境 (IDE),包括 IAR Embedded Workbench、MDK-ARM 和 STM32CubeIDE®

特定于某些板的功能

外部 SMPS 实验专用连接器:NUCLEO-L412RB-P、NUCLEO-L433RC-P、NUCLEO-L452RE-P 和 NUCLEO-U545RE-Q

用于 ST-LINK 的 USB Type-C、Micro-B 或 Mini-B 连接器®

USB Type-C 用户连接器:NUCLEO-C071RB、NUCLEO-H503RB、NUCLEO-H533RE 和 NUCLEO-U545RE-Q®

MIPI 调试连接器:NUCLEO-C071RB、NUCLEO-G431RB、NUCLEO-G474RE、NUCLEO-G491RE、NUCLEO-H503RB、NUCLEO-H533RE、NUCLEO-U031R8 和 NUCLEO-U083RC®

第二个用户 LED:NUCLEO-C071RB

外部或内部 SMPS 生成 V核心逻辑电源:NUCLEO-L412RB-P、NUCLEO-L433RC-P、NUCLEO-L452RE-P 和 NUCLEO-U545RE-Q

24 MHz 或 48 MHz HSE:NUCLEO-C031C6、NUCLEO-C071RB、NUCLEO-G431RB、NUCLEO-G474RE 和 NUCLEO-G491RE

用户 USB 设备全速或 USB SNK/UFP 全速:NUCLEO-C071RB、NUCLEO-H503RB、NUCLEO-H533RE 和 NUCLEO-U545RE-Q

密码:NUCLEO-H533RE、NUCLEO-U083RC 和 NUCLEO-U545RE-Q

板连接器:

板载 ST-LINK(STLINK/V2-1、STLINK-V3E、STLINK-V2EC 或 STLINK-V3EC)调试器/编程器,具有 USB 重新枚举功能:大容量存储、虚拟 COM 端口和调试端口

使用STM32CubeMX完成了一个基础项目,从软件的下载到点亮开发板上的LED灯。STM32CubeMX是一个非常强大的工具,它可以帮助开发者快速配置微控制器的参数并生成初始化代码。下面是你提到的一些关键步骤的简要概述:

新建项目:在STM32CubeMX中创建一个新的工程,这是开始任何项目的第一步。

选择芯片:根据你的硬件选择正确的STM32系列微控制器型号。

配置:对微控制器进行必要的配置,包括引脚配置、时钟设置、外设配置等。

你提到了将PA5设置为GPIO_Output,这是控制LED灯的关键配置。

配置了Serial Wire作为调试接口,这通常用于JTAG或SWD调试。

设置了时钟系统,包括外部晶振和内部时钟源,这对于确保系统稳定运行至关重要。

启用了RTC(实时时钟)。

选择IDE:你选择了MDK-ARM作为集成开发环境,这意味着生成的代码可以在Keil MDK中打开和编译。

生成代码:STM32CubeMX会根据你的配置生成初始化代码,这些代码可以直接用于你的项目。

编译运行:在Keil中编译生成的代码,并下载到开发板。

测试:下载代码后,如果一切配置正确,LED灯应该会亮起,这标志着你的项目配置成功。

1、新建项目

图片

2、选择芯片

图片

图片

双击一下就可以新建了

图片

3、配置

因为的板载LED是PA5,而且是低电平的时候才会亮灯。

图片

设置PA5的模式为GPIO_Output

图片

SYS,然后设置一下debug为Serial Wire

图片

RCC,设置一波时钟

图片

然后打勾一下RTC

图片

设置一下时钟频率

图片

因为我这个是170MHz的芯片,外部晶振使用了24MHz和32.768K两种。

图片

选择MDK-ARM代码,才可以在Keil中打开生成的代码。

点击生成代码

图片

图片

编译运行一下

下载到开发板

灯亮了,嘿嘿

资料

https://www.st.com/en/evaluation-tools/nucleo-g474re.html?rt=db&id=DB2196#overview

图片

在CAD这里有原理图

更多好东西可以到我的公众号里面阅读
在这里插入图片描述

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

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

相关文章

算法 —— 双指针

目录 移动零 复写零 快乐数 盛最多水的容器 有效三角形的个数 查找总价格为目标值的两个商品 三数之和 四数之和 移动零 下图以样例1为例,看下图如何做到保证非零元素相对顺序前提下,移动零元素。 代码实现如下: class Solution {…

1,Windows-本地Linux 系统(WSL)

目录 第一步电脑设置 第二步安装Ubuntu 第三文件传递 开发人员可以在 Windows 计算机上同时访问 Windows 和 Linux 的强大功能。 通过适用于 Linux 的 Windows 子系统 (WSL),开发人员可以安装 Linux 发行版(例如 Ubuntu、OpenSUSE、Kali、Debian、Arc…

如何有效保护生物医药企业隔离网数据导出的安全性?

生物医药企业的核心数据保护至关重要,企业为了保护内部的核心数据,会将网络进行物理隔离,将企业内⽹与外⽹隔离。⽹络隔离后,仍存在重要数据从内网导出至外网的隔离网数据导出需求。以下是一些需要特别保护的核心数据类型&#xf…

小米平板6系列对比

小米平板6系列目前有4款,分别为6、6 Pro、6 Max、6S Pro。具体对比如下表所示。 小米平板型号66 Pro6 Max6S Pro实物图发布时间2023年4月21日2023年4月21日2023年8月14日2024年2月22 日屏幕大小11英寸11英寸14英寸12.4英寸分辨率2.8K2.8K2.8K3K刷新率144Hz144Hz120…

EtherCAT笔记(四)——EtherCAT数据帧结构

EtherCAT数据包含2B的数据头和44~1948B的数据区。数据区由多个子报文组成。由于EtherCAT本身是通过以太网数据帧的形式传输,因此其协议帧中会携带以太网的帧头。 其中,解释如下: (1)以太网数据帧头:EtherC…

VSCode + GDB + J-Link 单片机程序调试实践

VSCode GDB J-Link 单片机程序调试实践 本文介绍如何创建VSCode的调试配置,如何控制调试过程,如何查看修改各种变量。 安装调试插件 在 VSCode 扩展窗口搜索安装 Cortex-Debug插件 创建调试配置 在 Run and Debug 窗口点击 create a launch.json …

C语言力扣刷题11——打家劫舍1——[线性动态规划]

力扣刷题11——打家劫舍1和2——[线性动态规划] 一、博客声明二、题目描述三、解题思路1、线性动态规划 a、什么是动态规划 2、思路说明 四、解题代码(附注释) 一、博客声明 找工作逃不过刷题,为了更好的督促自己学习以及理解力扣大佬们的解…

日志分析-windows系统日志分析

日志分析-windows系统日志分析 使用事件查看器分析Windows系统日志 cmd命令 eventvwr 筛选 清除日志、注销并重新登陆,查看日志情况 Windows7和Windowserver2008R2的主机日志保存在C:\Windows\System32\winevt\Logs文件夹下,Security.evtx即为W…

有哪些防爬虫的方法

防爬虫的方法有robots.txt文、user-agent过滤、ip限制、验证码、动态页面生成、频率限制、动态url参数和反爬虫技术等。详细介绍:1、robots.txt文件,用于告诉搜索引擎爬虫哪些页面可以访问,哪些页面禁止访问;2、ip限制&#xff0c…

面试-J.U.C包的梳理

1.J.U.C包的梳理 Java.Util.Concurrent包简称JUC (1)JUC整体架构图 (2)分析 Executor:线程执行器,任务执行和调度的框架。Tools下存在executor相关的executors类,用于创建executorservice,scheduleexecutorservice,…

获取 url 地址栏 ? 后面的查询字符串,并以键值对形式放到对象里面

写在前面 在前端面试当中,关于 url 相关的问题很常见,而对于 url 请求参数的问题也很常见,大部分以笔试题常见,今天就根据这道面试题一起来看一下。 问题 获取 url 地址栏?后面的查询字符串,并以键值对形式放到对象…

CICD持续集成(Jenkins+Git+Gogs)

1.Jenkins Jenkins 是一个开源的、用于构建和自动化软件开发流程的持续集成和交付工具。它提供了一个可扩展的平台,用于构建、测试和部署软件项目。通过使用 Jenkins,开发团队可以实现持续集成和交付,自动化构建和测试过程,提高软…

Rust监控可观测性

可观测性 在监控章节的引言中,我们提到了老板、前端、后端眼中的监控是各不相同的,那么有没有办法将监控模型进行抽象、统一呢? 来简单分析一下: 业务指标实时展示,这是一个指标型的数据( metric )手机 APP 上传的数…

springboot在线考试 LW +PPT+源码+讲解

第三章 系统分析 3.1 可行性分析 一个完整的系统,可行性分析是必须要有的,因为他关系到系统生存问题,对开发的意义进行分析,能否通过本系统来补充线下在线考试管理模式中的缺限,去解决其中的不足等,通过对…

三让徐州 | 第8集 | 自古皆有死,人无信不立 | 三国演义 | 逐鹿群雄

🙋大家好!我是毛毛张! 🌈个人首页: 神马都会亿点点的毛毛张 📌这篇博客分享的是《三国演义》文学剧本第Ⅰ部分《群雄逐鹿》的第8️⃣集《三让徐州》的经典语句和文学剧本全集台词 文章目录 1.经典语句2.文学剧本台词…

通过Python脚本实现字符画

效果 讲解: 用于将3D视图的帧缓冲区转换为字符画,并将字符画输出到文本编辑器中。 首先,获取当前绑定的帧缓冲区、视口信息和视图像素。 然后,将像素矩阵转化为字符串,并将字符串写入到文本编辑器中。 设置文本编辑…

【软件测试】白盒测试(知识点 + 习题 + 答案)

《 软件测试基础持续更新中》 最近大家总是催更……,我也是百忙之中给大家详细总结了白盒测试的重点内容! 知识点题型答案,让你用最短的时间,学到最高效的知识! 整理不易,求个三连 ₍ᐢ..ᐢ₎ ♡ 目录 一、…

Oracle数据库使用指南基本概念

学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……) 2、学会Oracle数据库入门到入土用法(创作中……) 3、手把手教你开发炫酷的vbs脚本制作(完善中……) 4、牛逼哄哄的 IDEA编程利器技巧(编写中……) 5、面经吐血整理的 面试技…

将深度相机的实时三维坐标数据保存为excel文档

一、如何将数据保存为excel文档 1.excel文件库与相关使用 (1)导入相应的excel文件库,导入前先要进行pip安装,pip install xlwt import xlwt # 导入用于创建和写入Excel文件的库 (2) 建立一个excel文档,并在第0行写…

PyQt问题汇总(持续更新)

目录 1.抛出异常后QAppliaction自动闪退 2.Unbuntu共享文件夹自动挂载 1.抛出异常后QAppliaction自动闪退 开发阶段,PyQt5 QAppliaction会在遇到未捕获的异常时立即退出,它能够快速发现并报告错误,我在调用一些密码算法库的时候&#xff0…