一.按键输入硬件连接
KEY0->PE4 上拉输入 KEY1->PE3 上拉输入 KEY2->PE2 上拉输入 WK_UP->PA0 下拉输入
二.GPIO输操作说明
读取IO口输入电平调用库函数:
读取IO口输入电平操作寄存器:GPIOx_IDR:端口输入寄存器
使用位带操作读取IO口输入电平:
PEin(4) ------------读取GPIOE.4口电平
PEin(n)------------读取GPIOE.n口电平
三.按键输入实验思路
1.使能按键对应IO口时钟。调用函数:
2.初始化IO模式: 上拉/下拉输入。调用函数:
GPIO_Init();
3.扫描IO口电平(库函数/寄存器/位操作)
四.C语言关键字:static
static申明的局部变量,存储在静态存储区。
它在函数调用结束后,不会被释放。它的值会一直保留下来。
所以可以说static申明的局部变量,具有记忆功能。
五.按键扫描模式
1.按键扫描(支持连续按)的一般思路:
2.按键扫描(不支持连续按)的一般模式:
3.两种模式结合:
六.代码部分
工程部分:
key.c:
led.c:
main.c:
编译无错误,无警告