STM32F1xx(六) GPIO作输入——按键实验(P16)

一 硬件连接

STM32F1xx(六) GPIO作输入——按键实验(P16)
说明:
1 读取IO口输入电平调用库函数为:
unit8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx,unit16_t GPIO_Pin);
2 读取IO口输入电平操作寄存器为:
GPIOx_IDR:端口输入寄存器
3:使用位带操作读取IO口输入电平:
PEin(4) -读取GPIOE.4口电平
PEin(n) -读取GPIOE.n口电平

操作:
1 使能按键对应IO口时钟,调用函数:RCC_APB2PeriphClockCmd();
2 初始化IO口模式:上拉/下拉输入,调用函数:GPIO_Init();
3 扫描IO口电平(库函数/寄存器/位操作)

编程思路:
1 支持连续按
2 不支持连续按 记忆上一次的值STM32F1xx(六) GPIO作输入——按键实验(P16)

STM32F1xx(六) GPIO作输入——按键实验(P16)
STM32F1xx(六) GPIO作输入——按键实验(P16)
STM32F1xx(六) GPIO作输入——按键实验(P16)
STM32F1xx(六) GPIO作输入——按键实验(P16)
key_scan 函数有优先级 key1>key2>key3
STM32F1xx(六) GPIO作输入——按键实验(P16)
STM32F1xx(六) GPIO作输入——按键实验(P16)