STM32 按鍵檢測

1 步驟git

1 配置GPIO 時鐘ui

2 配置GPIOcode

3 初始化ip

3 源碼源碼

注意:多個GPIO 分別賦值 避免值被覆蓋   it

#include "key.h"ast

void Init_Key(){
    //初始化端口時鐘
    GPIO_InitTypeDef  GPIO_InitStruct;
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOC,ENABLE);
  //初始化結構體
    GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IN_FLOATING;
  GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_InitStruct.GPIO_Pin|=GPIO_Pin_0;
    GPIO_Init(GPIOA,&GPIO_InitStruct);配置

    GPIO_InitStruct.GPIO_Pin=GPIO_Pin_13;
    GPIO_Init(GPIOC,&GPIO_InitStruct);
}demo

uint8_t KeyScan(GPIO_TypeDef *GPIOx,uint16_t GPIO_Pin){端口

   if(GPIO_ReadInputDataBit(GPIOx,GPIO_Pin)==KEY_ON)
     {
         while(GPIO_ReadInputDataBit(GPIOx,GPIO_Pin)==KEY_ON);
         return KEY_ON;
     }
     else{
       return KEY_OFF;
     }

}

demo 地址:https://gitee.com/codemaner/stm32_review_demo/tree/master

名稱:Fwlib_KEY.rar

相關文章
相關標籤/搜索