端口说明:
KEY1 PA0 0–1
KEY2 PE2 1–0
KEY3 PE3 1–0
KEY4 PE4 1–0
void SysTick_Handler(void)
{
timerun++;
LED_run[0]++;
}
#define PUSH (KEY1||!KEY2||!KEY3||!KEY4)
uint8_t KEY_GET(void)
{
static uint8_t key_temp=0;
static uint8_t cnt_temp=0;
static uint8_t Val_temp=0;
uint8_t Val=0;
if(PUSH)
{
key_temp=1;
if(cnt_temp==0)
{
KEY_run[0]=0;
cnt_temp=1;
}
}
if(key_temp==1&&KEY_run[0]>KEY_run[1])
{
if(PUSH)
{
if(Val_temp==0)
{
if(KEY1)Val=1;
else if(!KEY2)Val=2;
else if(!KEY3)Val=3;
else if(!KEY4)Val=4;
Val_temp=1;
}
}
if(PUSH);
else
{
cnt_temp=0;
key_temp=0;
Val_temp=0;
}
}
return Val;
}