色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 獨立按鍵驅(qū)動程序

          獨立按鍵驅(qū)動程序

          作者: 時間:2012-08-25 來源:網(wǎng)絡(luò) 收藏

          下面是,特點是利用TIMER0中斷,CPU在不停的,60ms到,執(zhí)行按鍵驅(qū)動,函數(shù)在48ms執(zhí)行一次,60ms再次執(zhí)行,避免了CPU資源的浪費

          bit  ltkey = 0;       //防止按鍵被長按bit  am_led = 0;uchar  unitTemp = 0xff;bit    amkey;bit    remsg = 0;bit    send = 0;bit    delay100 = 0;bit    mtoa = 0;void KeyScn(void)      //按鍵掃描模塊{uchar NowKeyValue;bit   NowAMKeyValue;//檢測按鍵if(pic == 10)      //首次按鍵檢測{amkey = AMKEY;unitTemp = P2;}if(pic == 13)      //12ms后,再次執(zhí)行檢測{NowKeyValue = P2;NowAMKeyValue = AMKEY;if(NowKeyValue != unitTemp)   //如果兩次檢測到的結(jié)果不同,則認(rèn)為是抖動,不做處理{unitTemp = 0xff;}if((NowAMKeyValue == amkey)  (amkey == 0))   //如果狀態(tài)鍵按鍵有效{if(ltkey == 0){           //AM狀態(tài)LED位,0為自動,1為手動am_led = !am_led;if(am_led == 0)       //如果是從手動切回自動,切回到CH1{unitTemp = 0xf7;mtoa = 1;        //由手動切到自動后的標(biāo)志位}AMLED = am_led;       //狀態(tài)燈,變化時寫入ltkey = 1;}}else{ltkey = 0;}}}


          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉