1.读取IO口有三种方法:
1、读取
IO
口输入电平调用库函数
uint8_t
GPIO_ReadInputDataBit
(
GPIO_TypeDef
*
GPIOx
, uint16_t
GPIO_Pin
);
2、读取
IO
口输入电平操作寄存器:
GPIOx_IDR:
端口输入寄存器
3、
使用位带操作读取
IO
口输入电平:
PEin(4) -读取GPIOE.4口电平
PEin(n) -读取GPIOE.n口电平
2.调用getValue(存循环值)
int getValue(void)
{
static int flag=0; (static变量只初始化一次)
flag++;
return flag;
}
按键扫描(将连续按键与不连续合二为一)
当mode=1;key_up=1,其余的key_up无效
当mode=0;按键不连续
3.程序编写
1.key.h
2.main.c:头文件
#include "sys.h";#include "delay.h";#include "usart.h";#include "led.h";
#include "beep.h";#include "key.h"