標題:
不一樣的特殊按鍵處理方式
[打印本頁]
作者:
長風007
時間:
2024-12-5 16:27
標題:
不一樣的特殊按鍵處理方式
這種按鍵檢測方式,有哪位大咖有最優(yōu)化的采集方法?
Key.jpg
(88.56 KB, 下載次數(shù): 0)
下載附件
2024-12-5 16:24 上傳
特殊的陣列按鍵
作者:
lkc8210
時間:
2024-12-5 17:41
u8 KeyVal = 0;//用完清零
void KeyScan()//1ms,定時運行
{
static u8 Delay_XD = 0;
u8 KeyTemp = 0;
Key_S1 = 1;
Key_S2 = 1;
Key_S3 = 1;
if(Key_S2==0)KeyTemp=1;
if(Key_S3==0)KeyTemp=3;
if(KeyTemp==0)
{
Key_S1 = 0;
if(Key_S2==0)KeyTemp=2;
}
if(KeyTemp==0)
{
Key_S2 = 0;
if(Key_S3==0)KeyTemp=4;
}
if(KeyTemp!=0)
{
if(Delay_XD<0xFF)Delay_XD++;
if(Delay_XD==20)//20ms消抖
{
KeyVal = KeyTemp;
}
}else{
Delay_XD = 0;
}
}
復(fù)制代碼
作者:
長風007
時間:
2024-12-7 09:12
lkc8210 發(fā)表于 2024-12-5 17:41
非常感謝!開拓了新思路。
作者:
powerdruy
時間:
2025-4-29 11:14
這種用法好像是參考了3個IO控制6個LED的查理復(fù)用方法
作者:
powerdruy
時間:
2025-4-29 11:15
http://www.torrancerestoration.com/bbs/forum.p ... p;page=1#pid1175808
這個貼里有關(guān)于查理復(fù)用的論述,在10樓
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1