| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 【蓝桥杯嵌入式组】HAL库STM32CubeMx学习笔记三:01-LED -> 正文阅读 |
|
[嵌入式]【蓝桥杯嵌入式组】HAL库STM32CubeMx学习笔记三:01-LED |
文章目录一、开发板资源介绍如原理图所示,开发板上有8个可供编程的LED。但8个LED与LCD引脚复用。若同时使用LED和LCD会出现冲突。 所以开发板上使用了74HC573锁存器,只有在PD2引脚由高到低时,LED的状态才会刷新。由此解决LED和LCD冲突的问题。 8个LED为低电平时点亮。 二、配置工程1、配置引脚在引脚图上单击某个引脚,选择想要配置的模式,即可配置成功。如下图为配置PD2引脚为输出模式。 由于开发板上8个LED与LCD引脚冲突,所以需要将PD2设置为输出模式,我习惯性将该引脚重命名为LE,也可不命名。LED的状态将在PD2的由高到低时刷新。 8个LED对应引脚为PC8-PC15,同样设置为输出模式。 如下图即为配置完成。 2、设置变量在main.c中用户添加变量区内设置变量
3、通用函数在main.c中用户添加代码区添加以下代码 此函数在为通用函数,只要涉及有LED的题目,都需要编写此函数。
函数使用方法:
4、应用函数由于题目中对于LED的要求一般是,在xxx情况下点亮,在xxx情况下熄灭。在xxx情况下以0.5s频率闪烁,因此我们需要根据题意编写应用函数。 4.1 LED1在lck≠0时点亮,否则熄灭;LED2在VR37>1时闪烁,否则熄灭。1.在main.c中用户添加代码区添加以下代码
2.最后在while中调用LED_Proc(); 4.2 LED1以0.5s频率闪烁1.在stm32g4xx_it.c中声明变量
2.在stm32g4xx_it.c中void SysTick_Handler(void)下添加以下代码
每过1ms,ulTime加一;每到ulTime是500的倍数(每隔0.5s)时,ucLedState翻转,在LED_Proc(void)中,ucLedState=1点亮,ucLedState=0熄灭,即每隔0.5sLED1状态翻转1次,LED1以0.5s频率闪烁。 3.在main.c中用户添加代码区添加以下代码
4.最后在while中调用LED_Proc(); 三、真题小练习1、 按键按下后LD1亮3秒之后灭1.在main.c中设置变量
2.main.c中添加代码
3.在stm32g4xx_it.c中声明外部变量
4.在stm32g4xx_it.c中void SysTick_Handler(void)下添加代码
5.最后在while中调用LED_Proc(); 2、 LED状态和LED序号均改变LED状态根据电压值改变 LED序号根据按键值改变 1.在main.c中设置变量
2.main.c中添加代码
3.在stm32g4xx_it.c中声明变量
4.在stm32g4xx_it.c中void SysTick_Handler(void)下添加代码
5.最后在while中调用LED_Proc(); LED的题目要求往往要和其他条件相连,所以可以再学习其他模块后做真题过程中强化LED。 在这里有一些学习资料建议,欢迎批评指正【蓝桥杯嵌入式组】HAL库STM32CubeMx学习笔记汇总:学习建议及资料 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 16:48:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |