0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32G431之点灯和按键配置

嵌入式技术 来源:嵌入式技术 作者:嵌入式技术 2022-11-24 08:50 次阅读

  STM32系列32位微控制器基于Arm® Cortex®-M处理器,旨在为MCU用户提供新的开发自由度。它包括一系列产品,集高性能、实时功能、数字信号处理、低功耗/低电压操作、连接性等特性于一身,同时还保持了集成度高和易于开发的特点。

poYBAGN-v8SAEfwRAAEv-WDufTA803.png#pic_center

1.硬件接口

  STM32G431开发板有一个用户按钮和LED灯。
  根据原理图,LD2和PA5相连,想要点亮LED则PA5应该为高电平。

pYYBAGN-v8WAVRpyAAGgTQj67Sw828.png#pic_center

  用户按键B1和PC13相连,按下为高电平;

poYBAGN-v8WAZ6pCAACIiru_Kps887.png#pic_center

2.软件设计

2.1 芯片型号选择

  本示例所使用芯片型号为:STM32G431RBT6;128KB flash 和32KB SRAM,工作频率高达170MHz。

pYYBAGN-v8aARQOzAAF0-ZKn44w402.png#pic_center

2.2 时钟配置

poYBAGN-v8eANmHtAADVgAZ7He4753.png#pic_centerpYYBAGN-v8eAMQt_AAHzg0v28KY160.png#pic_center

2.3 GPIO配置

poYBAGN-v8iAZ7pvAAC3Wkp2SiQ218.png#pic_centerpYYBAGN-v8mAVTyJAACgv6rAu3g962.png#pic_center

2.4 生成代码

poYBAGN-v8mALv6pAADouJuYYjU309.png#pic_centerpYYBAGN-v8qAI_5YAACxlshTgRU929.png#pic_center

2.5 LED和按钮引脚配置

poYBAGN-v8qAPNjRAANYvCssSbU815.png#pic_center

2.6 获取按键值函数编写

/*获取按键值*/
uint8_t Get_KeyVal(void)
{
  uint8_t static stat=0;
  if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin)==1 && stat==0)//判断按键是否按下
  {
    HAL_Delay(20);//延时消抖
    stat=1;
    if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin))return 1;
  }
  else if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin)==0)
  {
    stat=0;
  }
  return 0;
}

2.7 主函数

  uint8_t key;
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
    key=Get_KeyVal();
    if(key)
    {
      HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);
    }
  }
pYYBAGN-v8uAcrlUAAIV8LfEE6E492.png#pic_centerpoYBAGN-v82AGk-_AAshA1mcwUw922.png#pic_center

  开发板本身集成ST_Link下载器,只需安装ST_Link驱动即可直接下载。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16024

    浏览量

    343729
  • STM32
    +关注

    关注

    2240

    文章

    10675

    浏览量

    348872
  • 按键
    +关注

    关注

    4

    文章

    220

    浏览量

    57346
  • 开发板
    +关注

    关注

    25

    文章

    4441

    浏览量

    94121
收藏 人收藏

    评论

    相关推荐

    STM32CubeMX stm32g431 PLLP无法被设置是怎么回事?

    打扰了,没问题!ADC得设置成异步时钟! 使用了STM32CubeMX(6.9.1)开发stm32g431时,用cube配置始终,PLLP始终无法设置。我已启用了ADC1和ADC2,我想使用PLLP作为ADC12的时钟输入,但是
    发表于 03-14 06:43

    STM32G431无法输出项目工程的原因?

    系统为 Win 7 64位,安装的Cube MX版本为6.8.0,现在需要用STM32G431开发工程,已经安装好了1.50版本的Package包文件,现在的问题是无法输出项目工程,输出工程的时候
    发表于 03-15 07:52

    stm32g431的PG10-NRST可以当普通IO吗?怎么设置?

    stm32g431的PG10-NRST可以当普通IO吗,怎么设置。
    发表于 03-20 08:09

    配置STM32G431的FDCAN为普通CAN模式,为什么不能接收数据?

    我这边配置STM32G431的FDCAN为普通CAN模式,配置如下,发送数据是成功的,其他板子也可以接收到发送的数据,但是G431却不能接收数据,帮忙看一下是什么问题,谢谢。
    发表于 03-25 08:31

    STM32F302K8U6和STM32G431中内置的运放 建立时间是多长?

    STM32F302K8U6 和STM32G431 中内置的运放 建立时间是多长? 在手册中未找到相关描述
    发表于 03-28 08:36

    STM32G431开发板免费试用

    STM32G431开发板高分辨率电源转换定时器内置各种功能,能够释放CPU资源并简化开发过程;模拟外设和转换器的性能显著提升;高速连接技术使外部事件响应速度快;支持最新的Power Delivery
    发表于 08-20 16:25

    STM32G431试用申请】STM32G431在模拟前端板的替代

    项目名称:STM32G431在模拟前端板的替代试用计划:申请理由:原来产品用的是stm32l100r8t6,希望申请这块板子来评估STM32G431性能项目名称及计划:STM32G431
    发表于 09-06 11:34

    求一个蓝桥杯大赛嵌入式组STM32G431资源包

    求一个蓝桥杯大赛嵌入式组STM32G431资源包
    发表于 10-12 17:57

    STM32G431串口通信怎么使用?

    STM32G431串口通信怎么使用?
    发表于 12-08 06:30

    STM32G431嵌入式设计相关资料下载

    前言笔者今年是第一次参加蓝桥杯,赛道为嵌入式设计,目前取得了国二的成绩,虽说不是最好,但从中学到了许多,收获了许多。今年我所使用的是STM32G431, 用的HAL库,这也是我第一次学习使用HAL库
    发表于 12-10 08:31

    STM32G431串口通信的使用步骤

    摘要本文章基于国信长天M4开发板,讲述了STM32G431 串口通信的使用步骤,祝各位学生蓝桥杯电子比赛取得好成绩!M4开发板 串口引脚由上图可以看出,DAP Link的串口连接在芯片的PA9
    发表于 01-11 07:21

    在什么温度下可以检测到STM32G431的TS_CAL2值呢?

    你好在什么温度下检测到 STM32G431 的 TS_CAL2 值?在数据表中报告为 130 度,而在库“stm32g4xx_ll_adc.h”中,TEMPSENSOR_CAL2_TEMP 为 110 度谢谢
    发表于 12-26 06:35

    如何用stm32g431 DMA方式更新周期信息?

    stm32g431 DMA方式更新周期信息。
    发表于 08-05 07:25

    如何使用STM32G431芯片做DAC应用

    有人使用STM32G431芯片做DAC应用,具体来说就是通过DMA将数据从指定内存传送给DAC数据寄存器,并由定时器触发DAC转换。他发现总是没法实现该功能。这里简单介绍下相关实现过程,并做些提醒
    的头像 发表于 09-12 10:08 5200次阅读

    STM32_按键点灯

    学习32是一个循序渐进的过程,通过点灯可以了解到许许多多的知识,今天先讲解按键点灯,明天会通过对比按键,写中断控制点灯的程序。直接通过原理图
    发表于 01-12 20:42 6次下载
    <b class='flag-5'>STM32</b>_<b class='flag-5'>按键</b><b class='flag-5'>点灯</b>