|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
求個(gè)鍵盤掃描程序,能取按鍵按下跟按鍵抬起兩種狀態(tài) |
| 作者:free8 欄目:單片機(jī) |
平常的按鍵只是按下就可以,最近碰到一個(gè)問(wèn)題,要取按下跟抬起兩種狀態(tài)。不知道哪位大牛能給俺提供一下這方面的資料,學(xué)習(xí)一下,特別感謝啊~! |
| 2樓: | >>參與討論 |
| 作者: conwh 于 2006/10/9 20:36:00 發(fā)布:
加個(gè)反相器等電路進(jìn)行中斷 |
|
| 3樓: | >>參與討論 |
| 作者: hotpower 于 2006/10/9 22:30:00 發(fā)布:
四鍵零耗時(shí)消抖 |
|
| 4樓: | >>參與討論 |
| 作者: 汽車電子 于 2006/10/9 22:43:00 發(fā)布:
取掃描值緩沖即可 uchar KeyValue[3]; if((KeyValue[0] == NO_KEY) && (KeyValue[1] == ANY_KEY) && (KeyValue[2] == ANY_KEY) { // 鍵按下 } else if((KeyValue[0] == ANY_KEY) && (KeyValue[1] == ANY_KEY) && (KeyValue[2] == ANY_KEY) { // 鍵按住 } else if((KeyValue[0] == ANY_KEY) && (KeyValue[1] == NO_KEY) && (KeyValue[2] == NO_KEY) { // 鍵彈起 } |
|
| 5樓: | >>參與討論 |
| 作者: dengm 于 2006/10/9 22:54:00 發(fā)布:
按下是一個(gè)scan code, 抬起又是一個(gè)scancode就可,與pc鍵盤一樣 |
|
| 6樓: | >>參與討論 |
| 作者: free8 于 2006/10/9 23:14:00 發(fā)布:
按鍵抬起怎么掃描? rt |
|
| 7樓: | >>參與討論 |
| 作者: hotpower 于 2006/10/9 23:37:00 發(fā)布:
抬起即"無(wú)鍵壓下" |
|
| 8樓: | >>參與討論 |
| 作者: uc301 于 2006/10/9 23:49:00 發(fā)布:
應(yīng)該可理解為上升沿觸發(fā)吧! 應(yīng)該可理解為上升沿觸發(fā)吧! 在連續(xù)的兩次掃描當(dāng)中,出現(xiàn)鍵值為0及1時(shí),就認(rèn)為剛發(fā)生一次抬起狀態(tài)吧 |
|
| 9樓: | >>參與討論 |
| 作者: hotpower 于 2006/10/10 0:14:00 發(fā)布:
當(dāng)然也要注意消抖問(wèn)題~~~ |
|
| 10樓: | >>參與討論 |
| 作者: yuands 于 2006/10/25 23:11:00 發(fā)布:
按鍵按下和抬起同理 |
|
|
|
| 免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |