蓝桥杯嵌入式CT117E-M4学习笔记06-LED灯实验

news/2024/10/26 11:15:40/

文章目录

  • 前言
  • 一、实验原理
  • 二、配置步骤
  • 三、LED灯闪烁
  • 四、LED流水灯
  • 总结


前言

经过前面几个笔记的学习,我们已经了解了蓝桥杯嵌入式的比赛大纲,了解了STM32G431芯片的基本信息,以及开发环境的配置,接下来就可以针对开发板来进行学习了。

本次我们来学习开发板的LED灯实验

一、实验原理

在这里插入图片描述

1. SN74HC573是一款八路输出的锁存器,当输入端的数据消失或改变时,输出端的数据在锁存状态下仍保持不变
在这里插入图片描述
2. 芯片功能表如上图所示,根据原理图和功能表可以分析出。

1. OE引脚直接与GND相连,因此OE始终位L状态,芯片一直保持输出状态。
2. LE引脚与STM32的PD2引脚相连。

  • 当PD2为高电平时,输出端数据等于输入端数据。
  • 当PD2为低电平时,输出端数据保持数据不变。
  • led灯正极与串联300Ω电阻至电源VDD,因此74HC573输出端低电平即可点亮LED灯。

二、配置步骤

1.创建工程,配置时钟、MDK5配置等。

2.配置GPIO,界面右侧,直接选中IO口,点击选择GPIO_Output输出模式。
在这里插入图片描述

3.同样的操作,配置PC8-PC15为输出模式

在这里插入图片描述

4.配置所有的IO口默认输出状态高电平,配置上拉电阻,输出速度为低速即可,同时为PD2引脚自定义名称“LE”。

  • 默认输出状态高电平是为了让LED灯默认不点亮状态。
  • IO口一般都是配置为推挽输出,除非驱动大功率期间且外部单独进行上拉电阻。
  • 上拉电阻是可以让IO口在高电平时增加抗干扰能力,不会轻易拉低。
  • 低速是因为点亮LED灯不需要很高的速度。
  • 自定义名称是为了便于使用。

在这里插入图片描述

三、LED灯闪烁

1.在main.c中输入相应代码

//翻转GPIOC 8-15的状态
HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_8|GPIO_PIN_9|GPIO_PIN_10|GPIO_PIN_11|GPIO_PIN_12|GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_15);	
//延时1000ms
HAL_Delay(1000);

在这里插入图片描述

2.编译后烧录至开发板中,实验现象,8个LED灯,间隔1S闪烁。

在这里插入图片描述

四、LED流水灯

1.在main.c中输入相应代码

uint16_t led = 8;	//定义点亮某个灯 从pin8开始
//默认所有灯都熄灭
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_8|GPIO_PIN_9|GPIO_PIN_10|GPIO_PIN_11|GPIO_PIN_12|GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_15,GPIO_PIN_SET);
//点亮某个灯
HAL_GPIO_WritePin(GPIOC,1 << led,GPIO_PIN_RESET);
led ++ ;
if(led == 16){	//如果已经到了最后一个灯led = 8;	//返回第一个灯
}
//延时200ms
HAL_Delay(200);

在这里插入图片描述

2.编译后烧录至开发板中,实验现象,8个LED灯,循环200ms闪烁。

在这里插入图片描述

总结

以上就是开发板的LED灯实验,如有错误,感谢指正。

鉴于官方开发板售价过高,本人自己制作了一款蓝桥杯嵌入式开发板,完全兼容官方的开发板,并且接下来会基于这款开发板进行学习和制作学习日志,到时候所拍实物图片会与官方开发板略有不同,如果有意向一起学习的同学也可以私聊我互相学习交流,ps: 找我低价买块开发板自己学习也是可以的 ~ 。


http://www.ppmy.cn/news/527935.html

相关文章

蓝桥杯嵌入式CT117E-M4学习笔记01-竞赛大纲

文章目录 前言一、蓝桥杯嵌入式竞赛大纲1.参赛资格2.竞赛用时3.竞赛形式4.试题形式5. 赛场设备设施6. 试题涉及的基础知识7. 分值比例8. 评分 总结&报名链接 前言 本人为电子信息专业大四应届毕业生&#xff0c;参加过各式各样的学科类竞赛&#xff0c;这还是第一次参加蓝…

Spring Boot中使用thymeleaf以及各种取值,判断,选择,截取等方式

Spring Boot中使用thymeleaf Spring Boot支持FreeMarker、Groovy、Thymeleaf和Mustache四种模板解析引擎&#xff0c;官方推荐使用Thymeleaf。 spring-boot-starter-thymeleaf 在Spring Boot中使用Thymeleaf只需在pom中加入Thymeleaf的starter即可&#xff1a; <depende…

HarmonyOS学习路之开发篇—多媒体开发(媒体数据管理开发)

一、媒体数据管理开发概述 HarmonyOS媒体数据管理模块支持多媒体数据管理相关的功能开发&#xff0c;常见操作如&#xff1a;获取媒体元数据、截取帧数据等。 在进行应用的开发前&#xff0c;开发者应了解以下基本概念&#xff1a; PixelMap PixelMap是图像解码后无压缩的位…

MinGW最新版本下载

转载 https://blog.csdn.net/liuzehn/article/details/106501376 一、MinGW下载地址&#xff1a; https://sourceforge.net/projects/mingw/files/?sourcenavbar 二、点击下载最新版本&#xff0c;下图已经圈出。 到时间后&#xff0c;浏览器自动下载 三、右键管理员权限运…

MinGW下载链接

1.官网压缩包下载链接 这个下载比较慢, 推荐下载压缩包. 2.百度云盘链接 https://pan.baidu.com/s/1iku34F1RiGykS5E9IS9hKQ

【河马】oracle注入工具v1.1,明小子4.5|明小子注入工具 v15.1最新版

明小子注入工具是利用SQL语句在外部对SQL数据库进行查询&#xff0c;更新等动作。明小子注入工具在注入过程中一旦获得网站的配备内容&#xff0c;则有可能获得整个网站的控制权。 明小子注入工具软件介绍&#xff1a; 所谓的SQL(结构化查询语言)注入&#xff0c;简单来说就是利…