@按键实验(GPIO的输入模式)
#引言
在之前的实验中,小罗同学使用的都只是GPIO的输出模式,这次的按键实验虽然比较简单,但也是我第一次接触GPIO的输入,所以还是想写点东西记录一下。
#按键模块电路图
我手中的开发板除去复位按键后还有其余四个按键,电路结构图如下:
以上四个按键所对应的管脚编号分别为:PA0、PE4、PE3、PE2。由图可知,KEY_UP为高电平有效,其他三个均为低电平有效。
#按键配置
大家都知道,在使用引脚之前首先要进行相应的配置来初始化,相关代码如下:
void KEY_Init(void)
{
GPIO_InitTypeDef GPIO_InitStruct; //先对挂接在PA0的KEY_UP进行配置
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA|RCC_AHB1Periph_GPIOE,ENABLE);
GPIO_InitStruct.GPIO_Mode=GPIO_Mode_IN;
GPIO_InitStruct.GPIO_Pin=GPIO_Pin_0;
GPIO_InitStruct.GPIO_PuPd=GPIO_PuPd_DOWN; //由于改端口高电平视为有效,所以默认为低电平
GPIO_Init(GPIOA,&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Mode=GPIO_Mode_IN;
GPIO_InitStruct.GPIO_Pin=GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4;
GPIO_InitStruct.GPIO_PuPd=GPIO_PuPd_UP; //由于改端口低电平视为有效,所以默认为高电平
GPIO_Init(GPIOE