值得注意的是:
当WK_UP按键按下去之后,IO口检测到高电平;
当KEY0/1/2按下,IO口检测到低电平;
所以KEY0/1/2用上拉输入,WK_UP用下拉输入。
一共有三种方法输入电平:
1,读取IO口输入电平调用库函数为:
uint8_t GPIO_ReadInputDataBit(GPIO_Yype*GPIOx,uint16_t GPIO_Pin);
2,读取IO口输入电平操作寄存器为:
GPIOx_IDR:端口输入寄存器
3,使用位带操作读取IO口输入电平方法:
PEin(4) 读取GPIOE.4口电平
PEin(n) 读取GPIOE.n口电平
操作IO口之前必须使能按键对应的IO口时钟,调用函数
RCC_AHB1PeriphClockCmd();
还要初始化IO模式:上拉下拉输入,调用函数:
GPIO_Init();