以下给出三种按键扫描的思路,可以借鉴
第一种:
//按键扫描(支持连续按)
u8 KEY_Scan(void)
{
if(key按下)
{
delay(10);
if(key按下)
{
return 1;
}
}
return 0;
}
第二种:
//按键扫描(不支持连续按)
u8 key_scan(void)
{
static u8 key_flag=1;
if(key_flag==1 && key按下)
{
delay(10);
key_flag=0;
if(key确实按下)
{
return 1;
}
}
else if(key没有按下)
{
key_flag=1;
return 0;
}
}
第三种:
uint8_t Key_Scan(void)
{
/*检测是否有按键按下 */
if(按键按下)
{
/*等待按键释放,释放完才会返回1 */
while(按键按下);
return 1;
}
else
return 0;
}
以下给出三种按键扫描的思路,可以借鉴
第一种:
//按键扫描(支持连续按)
u8 KEY_Scan(void)
{
if(key按下)
{
delay(10);
if(key按下)
{
return 1;
}
}
return 0;
}
第二种:
//按键扫描(不支持连续按)
u8 key_scan(void)
{
static u8 key_flag=1;
if(key_flag==1 && key按下)
{
delay(10);
key_flag=0;
if(key确实按下)
{
return 1;
}
}
else if(key没有按下)
{
key_flag=1;
return 0;
}
}
第三种:
uint8_t Key_Scan(void)
{
/*检测是否有按键按下 */
if(按键按下)
{
/*等待按键释放,释放完才会返回1 */
while(按键按下);
return 1;
}
else
return 0;
}
举报