| 1 | 1/1 | 返回列表 |
| 查看: 401 | 回復(fù): 0 | ||
云往這邊飄銀蟲 (小有名氣)
|
[求助]
求助 關(guān)于單片機(jī)4*4矩陣掃描程序 想了一天 沒想通
|
|
下劃線部分不懂 求不吝賜教 void InterruptTimer0() interrupt 1 { unsigned char i; static unsigned char keyout = 0; //矩陣按鍵掃描輸出索引 static unsigned char keybuf[4][4] = { //矩陣按鍵掃描緩沖區(qū) {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF} }; TH0 = 0xFC; //重新加載初值 TL0 = 0x67; //將一行的4個(gè)按鍵值移入緩沖區(qū) keybuf[keyout][0] = (keybuf[keyout][0] << 1) | KEY_IN_1; keybuf[keyout][1] = (keybuf[keyout][1] << 1) | KEY_IN_2; keybuf[keyout][2] = (keybuf[keyout][2] << 1) | KEY_IN_3; keybuf[keyout][3] = (keybuf[keyout][3] << 1) | KEY_IN_4; //消抖后更新按鍵狀態(tài) for (i=0; i<4; i++) //每行4個(gè)按鍵,所以循環(huán)4次 { if ((keybuf[keyout] & 0x0F) == 0x00) { //連續(xù)4次掃描值為0,即4*4ms內(nèi)都是按下狀態(tài)時(shí),可認(rèn)為按鍵已穩(wěn)定的按下 KeySta[keyout] = 0; } else if ((keybuf[keyout] & 0x0F) == 0x0F) { //連續(xù)4次掃描值為1,即4*4ms內(nèi)都是彈起狀態(tài)時(shí),可認(rèn)為按鍵已穩(wěn)定的彈起 KeySta[keyout] = 1; } } //執(zhí)行下一次的掃描輸出 keyout++; //輸出索引遞增 if(keyout>3) { keyout=0; } // keyout = keyout & 0x03; //索引值加到4即歸零 switch (keyout) //根據(jù)索引,釋放當(dāng)前輸出引腳,拉低下次的輸出引腳 { case 0: KEY_OUT_4 = 1; KEY_OUT_1 = 0; break; case 1: KEY_OUT_1 = 1; KEY_OUT_2 = 0; break; case 2: KEY_OUT_2 = 1; KEY_OUT_3 = 0; break; case 3: KEY_OUT_3 = 1; KEY_OUT_4 = 0; break; default: break; } } |
| 1 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 372分材料與化工(085600)一志愿湖南大學(xué)求調(diào)劑 +3 | 藍(lán)箋片 2026-04-02 | 3/150 |
|
|---|---|---|---|---|
|
[考研] 301求調(diào)劑 +13 | A_JiXing 2026-04-01 | 13/650 |
|
|
[考研] 805600專碩材料與化工348分求調(diào)劑 +6 | 上學(xué)啦! 2026-04-01 | 6/300 |
|
|
[考研] 0856,269分求調(diào)劑 +8 | 有學(xué)上就行求求?/a> 2026-03-30 | 11/550 |
|
|
[考研] 求調(diào)劑0703 +5 | 周嘉堯 2026-03-31 | 8/400 |
|
|
[考研] 材料科學(xué)與工程339求調(diào)劑 +11 | hyz0119 2026-03-31 | 12/600 |
|
|
[考研] 化學(xué)308分調(diào)劑 +13 | 你好明天你好 2026-03-30 | 14/700 |
|
|
[考研] 材料0856 英一數(shù)二 323 求調(diào)劑 +9 | 袁sy 2026-04-01 | 9/450 |
|
|
[考研] 一志愿中農(nóng)0710生物學(xué),微生物方向總分338求調(diào)劑 +3 | 柒xxxx. 2026-03-26 | 3/150 |
|
|
[考研] 070300求調(diào)劑306分 +5 | 26要上岸 2026-03-27 | 5/250 |
|
|
[考研] 本科211生物醫(yī)學(xué)工程085409求調(diào)劑339分 +7 | 里子木yy 2026-03-29 | 7/350 |
|
|
[考研] 274求調(diào)劑 +6 | xiao愛同學(xué) 2026-03-30 | 6/300 |
|
|
[考研] 370求調(diào)劑 +3 | 080700調(diào)劑 2026-03-30 | 3/150 |
|
|
[考研] 福建理工大學(xué)材料學(xué)院先進(jìn)合金團(tuán)隊(duì)招收考研調(diào)劑學(xué)生 +3 | 大華金商都 2026-03-30 | 4/200 |
|
|
[考研] 哈爾濱工業(yè)大學(xué)材料與化工專碩378求調(diào)劑 +3 | 塔比烏斯 2026-03-30 | 3/150 |
|
|
[考研]
|
鐘llll 2026-03-26 | 5/250 |
|
|
[考研] 356求調(diào)劑 +3 | gysy?s?a 2026-03-28 | 3/150 |
|
|
[考研] 265求調(diào)劑 +8 | 小木蟲085600 2026-03-27 | 8/400 |
|
|
[考研] 285求調(diào)劑 +4 | AZMK 2026-03-27 | 7/350 |
|
|
[考研]
|
平樂樂樂 2026-03-26 | 4/200 |
|