|
按鍵,有多種用法,
1. 獨立按鍵:按一個,對應(yīng)一個動作,可以用掃描,也可用 中斷方式;2. 矩陣按鍵:常用的 4*4 = 16, 3*8 = 24,... 主要在于將小數(shù)按鍵進行組合,達到 以少生多 的控制效果,節(jié)約 IO 控制端口;
3. 長按 短按:這個,是目前較為常用的一種思路,一個按鍵形成 多個 用途:給出MCU C語言代碼框架,方便大家使用;
void Key()
{
uchar count_x; // 定義 臨時 變量,用于統(tǒng)計按鍵的 計時長度;
if( !K1 ) // 按鍵 按下;
{
Delay_Nms(30); // 防抖;
if(!K1) // 確定 按鍵 真實 按下;
{
count_x = 0; // 記數(shù)清 0;
do{
count_x ++; // 記錄 長按 短按;
Delay_Nms(10);
if( count_x >= 20) break; // 記到 20就封頂;
} while(!K1); // 設(shè)計到 1000ms ,就松手,就退出 計數(shù);
// 長按 短按 的 時間分界點:(0----20---30)
if(count_x <= 20) // 短按;
{
; //短按對應(yīng) 程序體1;
}
else // 長按;
{
; //長按對應(yīng) 程序體2;
}
}
}
}
4. 計數(shù)按鍵:這個,通常會結(jié)合定時器使用,按下去后,在一個指時時間類,計下按下按鍵的次數(shù),當(dāng)時間停止后,對應(yīng)按鍵次數(shù),進入對應(yīng)的 指定模塊運行;
不知,大家還有什么 常用的 按鍵 知識,可以一起分享;
|
評分
-
查看全部評分
|