科技改變生活 · 科技引領(lǐng)未來
簡單來說就是不同的鍵盤對應(yīng)著不同的手感,可以給你提供不同的使用體驗
經(jīng)過核實后將會做出處理,感謝您為社區(qū)和諧做出貢獻。
C語言判斷鍵盤按下和釋放,是通過檢測該鍵的狀態(tài)來實現(xiàn)的。如果是單一的一個按鍵,那么直接檢測該鍵是“1”還是“0”,就可以確定是按下還是釋放。如果是矩陣鍵盤,那么需要發(fā)送掃描碼,再檢測輸入值,來判斷鍵盤中鍵的狀態(tài)。以下舉例說明:bit keychk() //單一按鍵檢測{if(P1.0==0) //如果鍵按下{delay(); //延時去抖if(P1.0==0)return(1); //返回鍵狀態(tài)}return(0);}unsigned char kbscan(void) //矩陣掃描按鍵檢測{unsigned char sccode,recode;P1=0x0f; //發(fā)0掃描,列線輸入if ((P2 & 0x0f) != 0x0f) //有鍵按下{delay(20); //延時去抖動if ((P1&0x0f)!= 0x0f){sccode = 0xef; //逐行掃描初值while((sccode&0x01)!=0){P1=sccode;if((P1&0x0f)!=0x0f){recode=(P1&0x0f)|0xf0;while((P1&0x0f)!=0x0f);//等待鍵抬起return((~sccode)+(~recode));}elsesccode=(sccode<<1)|0x01;}}}return 0; //無鍵按下,返回0}
robots
版權(quán)所有 未經(jīng)許可不得轉(zhuǎn)載
增值電信業(yè)務(wù)經(jīng)營許可證備案號:遼ICP備14006349號
網(wǎng)站介紹 商務(wù)合作 免責(zé)聲明 - html - txt - xml