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