一、蓝桥杯嵌入式STM32G431RBT6_点亮LED


前言

下面对STM32G431进行模块化学习,本文先学习CubeMX的配置以及点灯操作。


1.CubeMx配置

1.1时钟源的选择

在这里插入图片描述

1.2时钟树的配置

HCLK一般取80(使用ADC的情况下)
在这里插入图片描述

1.3配置引脚

在产品手册中可以找到STM32G431的LED原理图,从下图可以看出,8颗LED灯通过74HC573驱动,LED灯采用低电平的方式点亮,控制引脚连PD2引脚。我们可以在PD2高电平的基础上,控制GPIO PC8 ~ PC15 的高低电平从而控制LED的亮灭。
在这里插入图片描述
在CubeMX的中依次配置PC8~PC15,以及PD2引脚
在这里插入图片描述

1.4文件配置

填写文件名字,选择MDK-ARM以及对应的版本(一般选最新版本就行)
在这里插入图片描述在这里插入图片描述
到这里就算配置完成了,然后点击生成代码
在这里插入图片描述然后打开工程
在这里插入图片描述
注意打开工程后如果弹出Keil Pack Installer就表示你没有STM32G431的芯片包,keil在自动帮你下载。但是keil下载会特别慢,建议自己爬梯子下载好再重新打开工程。这里附上芯片包链接https://www.keil.arm.com/packs/stm32g4xx_dfp-keil/boards/

1.5工程配置

进工程后配置一下调适用器
在这里插入图片描述
然后可以调试,编写完代码按下载就可以了
在这里插入图片描述

2.代码编写

2.1代码编写步骤

首先了解在工程中编写代码的位置, 需要包含的头文件建议写在begin includes—ned includes之间,如下图
在这里插入图片描述

子函数建议写在code begin 0—end 0之间,如下图
在这里插入图片描述main函数建议写在初始化后的begin 2 end 2和while(1)中的begin3 end3之间,如下图
在这里插入图片描述

2.2LED测试代码编写

本次只编写简单的LED测试代码,以下代码放入while(1)中。

  HAL_GPIO_WritePin(GPIOC, GPIO_PIN_8, GPIO_PIN_SET); 
  HAL_GPIO_WritePin(GPIOC, GPIO_PIN_9, GPIO_PIN_RESET); 
  HAL_GPIO_WritePin(GPIOC, GPIO_PIN_10, GPIO_PIN_SET); 
  HAL_GPIO_WritePin(GPIOC, GPIO_PIN_11, GPIO_PIN_RESET); 
  HAL_GPIO_WritePin(GPIOC, GPIO_PIN_12, GPIO_PIN_SET); 
  HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET); 
  HAL_GPIO_WritePin(GPIOC, GPIO_PIN_14, GPIO_PIN_SET); 
  HAL_GPIO_WritePin(GPIOC, GPIO_PIN_15, GPIO_PIN_RESET); 

在这里插入图片描述

最后进行编译下载

3.代码编写方法二

配置完cube后打开工程,先在工程文件下建立一个新文件命名为bsp
在这里插入图片描述

然后打开keil在工程下新建一个群组,命名为bsp
在这里插入图片描述

然后Ctrl+N新建两个文本Ctrl+S分别命名为led.c和led.h,都另存在工程文件夹的bsp文件里,然后右击keil工程里的bsp组,添加led.c
在这里插入图片描述

在这里插入图片描述

编写led.h和led.c
在这里插入图片描述

在这里插入图片描述

在main.h里添加定义
在这里插入图片描述

在main.c包含头文件
在这里插入图片描述

初始化和程序编写
在这里插入图片描述

最后点击编译和上传

  • 24
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值