定时器中断25ms读取一次按键状态,按键值大于等于200长按,大于1小于100单击
void Key_Scan(void)
{
if(GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_8)==0)
{
if(Key_Flag)
{
Key_Count++;
}
if(Key_Count >=200)
{
Key_Flag = 0; //Key_Flag = 0;长按触发一次
Key_Count = 0;
//长按处理
}
}
else
{
Key_Flag = 1;
if(Key_Count>1 && Key_Count < 100)
{
//单击处理
}
Key_Count = 0;
}
}