嵌入式开发-STM32CUBEMX使用—基于STM32G431RBTx

嵌入式–基于STM32G431RBTX

1.利用STM32CUBEMX生成工程框架
2.利用STM32CUBEMX生成初始化代码文件

创建文件

image-20240204221809874

选择外晶振

image-20240204222223561

Clock Configuration配置

按如下数据配置

image-20240204222526237

Project Manager配置

image-20240204222920840

Code Generator

image-20240204223109580

在进行如上配置后即可生成

运行

在运行前需要把启动文件加入Application文件夹

image-20240204225635288

之后把这些文件全部放入HAL_00_PROJECT_SOURCE文件中,当作一个基准代码使用

image-20240204225943205

我们继续以点亮一个LED灯为例

我们打开00文件夹的ioc文件,同时去配置LLED灯

image-20240204230552100

需要勾画PC8–PC15,PD2

image-20240204230808668

设定GPIO

image-20240204231705743

输出高电平(初始化默认的)

一般选择推挽(分高低电平两种状态)

image-20240204232653145

这一部分是需要用到的

image-20240204233203944

其中src文件是我们的顶层文件,同时在src文件中添加一个板载的中间层文件—bsp

同时也在inc(头文件)中创建一个bsp文件

image-20240204233455201

在相应文件夹下同时创建bsp_led.c和bsp_led.h(注意,h文件是在bsp\led文件夹下的)

image-20240204234153097

image-20240204234231336

同时删掉01文件中GPIO的c和h文件

image-20240204235233177

image-20240204235303466

创建中间层

image-20240221185021500

添加bsp_led.c和bsp_led.h

image-20240205000029280

image-20240205000248664

ps:头文件添加停留在bsp这个位置即可

下一步:移植

image-20240205001250318

image-20240205001315232

 

 

添加配置好的代码

image-20240205002647169

image-20240205002722787

同时需要在main函数中声明

image-20240205002912820

测试:

在main函数中的循环里添加

	HAL_GPIO_WritePin(GPIOC , GPIO_PIN_15, GPIO_PIN_RESET);
	HAL_GPIO_WritePin(GPIOD , GPIO_PIN_2, GPIO_PIN_SET);
	HAL_GPIO_WritePin(GPIOD , GPIO_PIN_2, GPIO_PIN_RESET);

可以实现点亮一个led。

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

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

相关文章

游戏被攻击如何处理

游戏服务器被攻击对于开发者来说是很常见的事情,一般游戏刚上线或者日活比较高的时候,很容易成为攻击者的目标,为了利益,攻击者会利用大量肉鸡发起DDoS跟CC攻击,导致游戏服务器瘫痪、网络卡顿、或用户掉线等情况&#…

多个.C 文件关于全局变量如何使用

𝙉𝙞𝙘𝙚!!👏🏻‧✧̣̥̇‧✦👏🏻‧✧̣̥̇‧✦ 👏🏻‧✧̣̥̇:Solitary_walk ⸝⋆ ━━━┓ - 个性标签 - :来于“云”的“羽球人”。…

uniapp运动课程健身打卡系统微信小程序

考虑到实际生活中在我来运动管理方面的需要以及对该系统认真的分析,将系统分为小程序端模块和后台管理员模块,权限按管理员和用户这两类涉及用户划分。 (a) 管理员;管理员使用本系统涉到的功能主要有:首页、个人中心、用户管理、课程类别管理…

【知识分享】自动化测试首选接口自动化?

在分层测试的“金字塔”模型中,接口测试属于第二层服务集成测试范畴。 相比UI自动化测试而言,接口自动化测试收益更大,且容易实现,维护成本低,有着更高的投入产出比。因此,项目开展自动化测试的首选一般为接…

计网day5

六 传输层 6.1 传输层概述 6.2 UDP协议 6.3 TCP协议 TCP连接管理: TCP可靠传输: TCP拥塞控制:

kafka命令行操作

kafka命令行操作: 配置环境变量: export JAVA_HOME/usr/lib/jvm/java-1.8.0-openjdk export JRE_HOME${JAVA_HOME}/jre export CLASSPATH.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH export JAVA_PATH${JAVA_HOME}/bin:${JRE_HOME}/bin export PATH…

总结Rabbitmq的六种模式

RabbitMQ六种工作模式 RabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue 高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开发中应用非常广泛。 RabbitMQ有六…

Spring最新核心高频面试题(持续更新)

1 什么是Spring框架 Spring框架是一个开源的Java应用程序开发框架,它提供了很多工具和功能,可以帮助开发者更快地构建企业级应用程序。通过使用Spring框架,开发者可以更加轻松地开发Java应用程序,并且可以更加灵活地组织和管理应…

强化学习(SQL)

SQL——soft Q-learning 这是一种在最大化期望累计奖励的基础上,最大化熵项的算法,即该算法的优化目标是累计奖励和熵(entropy)的和。 SQL的好处: ①探索性强:可以在多模态任务中找到最佳的方案&#xf…

【问题解决】删除node节点后如何把node节点重新加入

环境明细 docker版本: 25.0.3kubeadm 版本:v1.25.0 1 在master节点删除node节点 [rootk8s-master ~]# kubectl delete nodes k8s-node-02 node "k8s-node-02" deleted [rootk8s-master ~]# kubectl get nodes -o wide NAME STAT…

嵌入式学习-qt-Day2

嵌入式学习-qt-Day2 一、思维导图 二、作业 1.使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数 2.将登录按钮使用qt5版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账…

大数据构建知识图谱:从技术到实战的完整指南

文章目录 大数据构建知识图谱:从技术到实战的完整指南一、概述二、知识图谱的基础理论定义与分类核心组成历史与发展 三、知识获取与预处理数据源选择数据清洗实体识别 四、知识表示方法知识表示模型RDFOWL属性图模型 本体构建关系提取与表示 五、知识图谱构建技术图…

简化与效率:亚信安慧AntDB在数据处理中的创新

AntDB统一超融架构将外部接口的统一化极大简化了数据采集与处理的流程。传统的数据采集必须分成不同的阶段,先将数据收集起来,再进行处理,过程繁琐且易出错。而AntDB统一超融架构则将这两个环节合二为一,使得数据的采集与处理成为…

Project_Euler-15 题解

Project_Euler-15 题解 题目 思路 一眼背包问题,再看一眼广度优先搜索,再看一眼排列组合,这里讲一讲排列组合的解法吧: 以 2 ∗ 2 2*2 2∗2的组合为例可以发现: 无论哪一种方法,从左上角到右下角总共需要…

Docker部署Java项目

打包 添加 <!-- 打包插件--> <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins> </build> 通过执行以下命令进…

Python学习笔记——自定义函数(基础知识)

自定义函数非常简洁有效地实现了代码的复用&#xff0c;让程序编写、阅读、测试和修改变得更加容易。 下面记录Python自定义函数的使用。 1、定义函数&#xff1a; def describe_pet(pet_name,animal_typedog):显示宠物的信息print(f"\nI have a {animal_type}.")…

年度巨作!《2024全球量子计算产业发展展望》发布

2月20日&#xff0c;《2024量子计算产业发展展望》的中文版报告通过光子盒官方平台发布&#xff0c;英文版报告通过ICV官方平台发布。 英文版报告获取地址&#xff1a; https://www.icvtank.com/newsinfo/897610.html 在过去的一年里&#xff0c;光子盒与您一同见证了全球量子…

useGeneratedKeys=“true” keyProperty=“id”

useGeneratedKeys“true” keyProperty“id” 这个注解在xml文件的insert方法中&#xff0c;可以用于返回主键值&#xff1b; 并且useGeneratedKeys参数只针对 insert 语句生效&#xff0c;默认为 false&#xff1b;

34.仿简道云公式函数实战-数学函数-PRODUCT

1. PRODUCT函数 函数使所有以参数形式给出的数字相乘并返回乘积。 2. 函数用法 PRODUCT(number1, [number2], …) 3. 函数示例 PRODUCT(数量, 单价) 4. 代码实战 首先我们在function包下创建math包&#xff0c;在math包下创建ProductFunction类&#xff0c;代码如下&…

24-k8s的附件组件-Metrics-server组件与hpa资源pod水平伸缩

一、概述 Metrics-Server组件目的&#xff1a;获取集群中pod、节点等负载信息&#xff1b; hpa资源目的&#xff1a;通过metrics-server获取的pod负载信息&#xff0c;自动伸缩创建pod&#xff1b; 参考链接&#xff1a; 资源指标管道 | Kubernetes https://github.com/kuberne…