国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

關于單片機按鍵問題性能提升總結

2020-01-26 13:37:16
字體:
來源:轉載
供稿:網友

最近看了一本書《8051單片機創(chuàng)新教程》,這本書比大學課本寫得好,在大學的課本中,我們常見的按鍵掃描程序如下:

unsinged char KeyScan(void){ unsigned char KeyValue=0; if(KEY_IO != 0xFF) //檢測到有按鍵按下 { DelayNms(20); //延時 20 毫秒(嚴重影響單片機的運行效率) if(KEY_IO != 0xFF)//確認按鍵按下 {  switch(KEY_IO)  {  case 0xFE: KeyValue=1;break;  case 0xFD: KeyValue=2;break;  default : KeyValue=0;break;  } } } return KeyValue;}

在現(xiàn)實中,論壇上看到以下代碼,我們不妨這樣,沒有用延時,運行效率大大提高!單片機實時性能顯著提高!

//讀取按鍵uchar read_key(){  static int Key_on_off = 0 ;//按鍵自鎖變量  uchar num , temp ;  num = P2 ;   num &= 0xf0 ; //將低四位清0  if(num != 0xf0)  {   if(Key_on_off == 0)  {   Key_on_off = 1 ;  switch(num)  {  //返回按鍵的編碼  case 0xe0 : temp = 1 ; break ;   case 0xd0 : temp = 2 ; break ;   case 0xb0 : temp = 3 ; break ;   case 0x70 : temp = 4 ; break ;   }  }    }  else   Key_on_off = 0 ; return temp ;}

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對武林網的支持。如果你想了解更多相關內容請查看下面相關鏈接

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 合江县| 佛教| 电白县| 什邡市| 那曲县| 乡宁县| 合川市| 辰溪县| 青河县| 迁安市| 章丘市| 新竹市| 商南县| 滦南县| 思南县| 建昌县| 辽阳市| 芷江| 仁寿县| 老河口市| 韶关市| 黔南| 宜黄县| 江华| 拉萨市| 宾阳县| 巫溪县| 田林县| 政和县| 博湖县| 泉州市| 阆中市| 南澳县| 夏津县| 扶绥县| 雷山县| 敦化市| 綦江县| 渝中区| 翁源县| 诸城市|