蓝桥杯嵌入式STM32G431模块二 按键

该博客记录按键的配置和简单的使用,并没有添加软件消抖和长按功能的实现。这些功能将在下一篇博客写到。

目录

一、按键配置

二、代码编写


一、按键配置

  1. 查看蓝桥杯嵌入式STM32G431的电路手册,PB0-PB3和PA0分别接到按键一侧,并且通过10K电阻上拉,当按键按下的时候引脚为低电平。
  2. 将STM32CubeMX像上一篇博客那样配置好,一定要设置输入晶振为24M,并且工程要保存在纯英文路径下。这里不再重复。
  3. 选择PB0-PB3和PA0配置为输入模式。
  4. 在GPIO中配置PB0-PB3和PA0(可以按住Ctrl键实现连续选择),可以设置为浮空输入模式,如下图所示
  5. 点击GENRATE CODE创建工程。keil的设置与上一篇博客相同这里不再重复。

二、代码编写

  1. 编写按键判断函数
    unsigned char Key_Read(void)
    {
    	unsigned char key_num=0;
    	if(!HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_0))
    	{
    		key_num=1;
    	}
    	if(!HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_1))
    	{
    		key_num=2;
    	}
    	if(!HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_2))
    	{
    		key_num=3;
    	}
    	if(!HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_0))
    	{
    		key_num=4;
    	}	
    	return key_num;
    }
  2. 测试代码,这里使用了上一篇博客写的LED用于演示按键的当前状态
      /* Infinite loop */
      /* USER CODE BEGIN WHILE */
      
    LED_Init();
    
      while (1)
      {
    	  
    LED(Key_Read());
        /* USER CODE END WHILE */
    
        /* USER CODE BEGIN 3 */
      }
      /* USER CODE END 3 */
    }
    

    到此按键简单的使用完成。

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值