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