【蓝桥杯嵌入式】Cubemx新建工程引脚配置与点亮LED

【蓝桥杯嵌入式】Cubemx新建工程引脚配置与点亮LED

参考博文1:STM32 | 利用STM32CubeMX初始化一个STM32工程

参考博文1:点亮LED灯,流水灯的原理图解析与代码实现------STM32

cubemx基础配置

芯片的选择: STM32G431RBT6

开启外部高速时钟

打开Debug

配置时钟树

LED 引脚配置

通过查看LED原理图,可以看到控制LED灯的是PC8~PC15,由于图中最左边是VDD,也就是高电平控制的,所以当PC8~PC15为高电平的时候,LED亮,为低电平的时候,LED灭。同时PD2作为锁存器的总开发,当PD2低电平时关,高电平时开。

将PC8~PC15和PD2引脚设置为输出模式

然后点击红框中的System Core中的GPIO,在弹出来的中间界面中选中PC8~PC15,根据原理图的分析,我们将这些引脚置为高电平 (high)。

按键配置

按键引脚配置

通过查阅手册,按键分别接在PB0-2,PA0引脚上,并且均接有上拉电阻,当按键按下时,IO口电瓶被拉低,否则为高电平。

将PB0~PB2和PA0引脚设置为输入模式:

然后点击红框中的System Core中的GPIO,在弹出来的中间界面中选中PB0~PB和PA0,根据原理图的分析,我们将这些引脚置上拉模式

定时器扫描配置

在按键扫描实现中,采用定时器中断的方式实现对按键的扫描,每10ms检测按键状态 ,因此需要对相关定时器进行参数配置,因为该定时器只用于定时作用,因此本人通常使用基本定时器TIM6完成实现。
其中
频率 frq = 80000000 / (预分频系数+1) / (自动重装载值+1)
定时周期 T = 1 / frq

记得开定时器中断!!!

工程管理配置

点亮LED程序设计

因为LED受74HC595锁存器的控制,因此需要先打开锁存器,拉低PC8引脚,最后关闭锁存器实现点亮LD1灯。

cpp 复制代码
HAL_GPIO_WritePin(GPIOD,GPIO_PIN_2,GPIO_PIN_SET);
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_8,GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOD,GPIO_PIN_2,GPIO_PIN_RESET);

注1:自己写的代码需要写在BEGIN 和 END之间,否则下次更新cubemx工程后会被覆盖

keil配置与程序下载

选择烧录器 DAP Debug

勾选复位运行并检查芯片包

若无加载芯片包,需手动加载:

编译与下载程序:

注:下载时候需要连接开发板

实际效果:

相关推荐
代码游侠7 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
xuxg200510 小时前
4G 模组 AT 命令解析框架课程正式发布
stm32·嵌入式·at命令解析框架
CODECOLLECT11 小时前
京元 I62D Windows PDA 技术拆解:Windows 10 IoT 兼容 + 硬解码模块,如何降低工业软件迁移成本?
stm32·单片机·嵌入式硬件
BackCatK Chen12 小时前
STM32+FreeRTOS:嵌入式开发的黄金搭档,未来十年就靠它了!
stm32·单片机·嵌入式硬件·freertos·低功耗·rtdbs·工业控制
全栈游侠14 小时前
STM32F103XX 02-电源与备份寄存器
stm32·单片机·嵌入式硬件
深圳市九鼎创展科技17 小时前
瑞芯微 RK3399 开发板 X3399 评测:高性能 ARM 平台的多面手
linux·arm开发·人工智能·单片机·嵌入式硬件·边缘计算
辰哥单片机设计17 小时前
STM32项目分享:车辆防盗报警系统
stm32·单片机·嵌入式硬件
風清掦18 小时前
【江科大STM32学习笔记-05】EXTI外部中断11
笔记·stm32·学习
小龙报18 小时前
【51单片机】从 0 到 1 玩转 51 蜂鸣器:分清有源无源,轻松驱动它奏响新年旋律
c语言·数据结构·c++·stm32·单片机·嵌入式硬件·51单片机
范纹杉想快点毕业18 小时前
嵌入式与单片机开发核心学习指南——从思维转变到第一性原理的深度实践
单片机·嵌入式硬件