使用STM32CubeMX新建工程

devtools/2024/10/15 22:27:14/

开发板:STM32h743xi

编程软件:Keil、STM32CubeMX

项目:GPIO外设操作(彩色LED灯)

学习打卡:Day1

学习地址:【野火】STM32 HAL库开发实战指南 教学视频 手把手教学STM32全系列 零基础入门CubeMX+HAL库,基于野火全系列STM32开发板

一、STM32h743xi上LED灯的原理图

 从上图我们可以看出

  1. LED_R是通过PB0口调节的
  2. LED_G是通过PB1口调节的
  3. LED_B是通过PA3口调节的

二、通过STM32CubeMX软件进行外设初始化代码的生成

因为使用的是野火公司制作的开发板,所以使用mcu进行选择 

进入软件后在此搜索H743xi,然后双击搜索到的mcu

因为在第一步中,我们找到了对应GPIO的接口,在此可以直接搜索

  1. PB0
  2. PB1
  3. PA3

 拿PB0为例,点击搜索出来的接口,选择GPIO输出

然后在GPIO除进行配置

  • 输出电平为低电平
  • 模式为推挽输出
  • GPIO既不上拉也不下拉
  • 选择低速

如果不是我这款mcu,需要配置sys,debug选项 

然后点击project manager,进入项目管理

首先配置Project中的选项

  1. 工程名称
  2. 工程路径
  3. IDE需要选择MDK-ARM
  4. 如果不想使用最新的固件包,可以选择本地进行替换 

 配置Code Generator

  • 选择只复制需要的文件
  • .c .h 进行划分处理

然后点击 GENERATE CODE,进行生成代码

三、通过Keil进行编程 

 1、配置Debug选项

2、然后继续构建,下载

然后查看状态

发现LED为混色输出,可以更改代码,进行相应的颜色修改,并翻转电平

在gpio.c中将LED关闭

3、将其写在主函数中

int main(void)
{/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();/* USER CODE BEGIN 2 *//* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE */HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_0);HAL_Delay(1000);/* USER CODE BEGIN 3 */}/* USER CODE END 3 */
}

选用B0口(红色)进行翻转,看效果图


http://www.ppmy.cn/devtools/102932.html

相关文章

jQuery实现前端下载功能

js实现前端下载功能 前端代码 html代码 <div class"div_button_btn_span"><a href"#" class"easyui-linkbutton" iconCls"icon-ok" onclick"exportExcel()" plain"true">导出明细</a> </…

基于Spring Boot的陶瓷文化网站的设计与实现

毕业设计&#xff08;论文&#xff09; 论文题目&#xff1a;基于Spring Boot的陶瓷文化网站的设计与实现 博主可接毕设论文&#xff01;&#xff01;&#xff01; 摘 要 中国悠久的陶瓷艺术&#xff0c;作为民族文化遗产的重要载体&#xff0c;历经时代的洗礼&#xff0c;其…

数据库管理-第236期 数据库一体机的价值(20240829)

数据库管理236期 2024-08-29 数据库管理-第236期 数据库一体机的价值&#xff08;20240829&#xff09;1 误区2 硬件3 操作系统4 数据库总结 数据库管理-第236期 数据库一体机的价值&#xff08;20240829&#xff09; 作者&#xff1a;胖头鱼的鱼缸&#xff08;尹海文&#xff…

EXCEL试题

EXCEL试题 Excel 是__C__. A.数据库管理软件 B.文字处理软件 C.电子表格软件 D.幻灯片制作软件Excel工作簿文件的默认扩展名为__B__. A.doc B.xls C.ppt D.mdb在Excel 的操作界面中,整个编辑栏被分为左、中、右三个部分,左面部分显示 出,C A.活动单元格的行号 B.活动单元格的…

21:【stm32】定时器二:输入捕获

输出捕获 1、输出捕获的简介2、输入捕获原理2.1、输入滤波2.2、信号选择2.3、CCx事件和CCx中断 3、标准库编程 1、输出捕获的简介 定时器通过通道捕获输入电平的变化&#xff0c;而通道有CH1~CH4&#xff0c;这4个通道。 我们设定对通道CH3的输入电平进行捕获。假如CH3突然捕获…

YAPI接口平台中对于接口的详细配置步骤

完整笔记指路&#xff1a;黑马JavaWeb开发笔记07——Ajax、Axios请求、前后端分离开发介绍、Yapi详细配置步骤 注意&#xff1a;我进去看了一下&#xff0c;这个网站非常不稳定&#xff0c;非常卡顿&#xff0c;并且很多人反映无法注册&#xff0c;推测需要魔法。我用Google账…

一文搞懂 js 原型和原型链

文章目录 一、前言二、原型2.1 概念2.2 获取原型的方法2.2.1 __proto__获取方式2.2.2 通过构造函数prototype 属性获取2.2.2 ES6 class 通过Object.getPrototypeOf()获取类原型 2.3 通过原型实现继承2.4 原型的作用 三、 原型链四、ES6实现继承五、综述 一、前言 原型和原型链…

manim动画:利用极限的定义证明极限。

函数的证明 用极限的定义来证明下面的极限。 要用极限的定义证明 &#xff0c;我们可以使用极限的定义&#xff1a; 设f(x)在包含a的开区间中对所有x≠a有定义&#xff0c;设L为实数。然后 如果&#xff0c;任意一个&#xff0c;存在一个 &#xff0c;以至于如果对于所有x在f的…