男女午夜激情_www.天堂av.com_亚洲综合小说区_亚洲欧美自拍视频_成年精品_久久www免费人成—看片_激情综合五月天_久久高潮视频_最新国产成人ab网站_国产精品卡一

機電之家資源網
單片機首頁|單片機基礎|單片機應用|單片機開發|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發
培訓信息
贊助商
按鍵開關消抖程序
按鍵開關消抖程序
 更新時間:2008-8-3 15:43:47  點擊數:2
【字體: 字體顏色


    

實踐中,單片機端口在連接開關器件時都要考慮消抖的問題,或在硬件上增加延遲,或是增加軟件延遲查詢的功能模塊。這里,我們考慮這樣一個檢測電路:單片機連接一個開關和兩個LED。程序是這樣的,如果開關的消抖正確,就點亮LED1,否則就閃亮LED2。按下開關,點亮LED1,釋放開關,LED1即熄滅。我們加入20毫秒的消抖延遲時間。當檢測到開關為低電平時,單片機在延遲20毫秒后再次檢測開關的狀態。如果此時開關狀態為高,則LED2就閃亮,如為低則點亮LED1。

源代碼:

led1 bit P2.0
led2 bit P2.1
switch1 bit P1.0
ORG 0000h
setb switch1 //initialize switch 1 as input
setb led1 //Turn OFF LED1
setb led2 //Turn OFF LED2

wait:
jb switch1,wait // Wait till switch1 has been pressed
call debounce_delay
jb switch1,c1_wait
//switch low even after debouncing period
//switch has been succesfully debounced
clr led1 //Turn ON LED1
jnb switch1,$ //wait till switch has been released
setb led1 //Turn OFF LED1
ajmp wait

c1_wait:
//Switch PIN high after debounce period so error in debouncing
cpl led2
ajmp wait

debounce_delay: //Subroutine for generating 20ms delay
MOV r7,#245
l1_debounce_delay:
MOV r6,#40
djnz r6,$
djnz r7,l1_debounce_delay
ret

END

 



  • 上一篇: 單片機遙控控制功放前級程序
  • 下一篇: 51單片機智能快速充電器設計
  • 發表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網友評論:(只顯示最新5條。)
    關于我們 | 聯系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發消息66821730(技術支持)點擊這里給我發消息66821730(廣告投放) 點擊這里給我發消息41031197(編輯) 點擊這里給我發消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業自行提供,該企業負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(濱江)機電一體化學會
    中國行業電子商務100強網站

    網站經營許可證:浙B2-20080178-1
    主站蜘蛛池模板: 平遥县| 宁波市| 肇庆市| 铁岭县| 武乡县| 桃园县| 曲沃县| 内黄县| 潮安县| 泸溪县| 凤翔县| 仁怀市| 柘城县| 嘉祥县| 莒南县| 南昌市| 思茅市| 柘荣县| 临洮县| 长垣县| 彭州市| 敦化市| 叙永县| 荣昌县| 尼玛县| 双桥区| 若尔盖县| 永年县| 辽宁省| 台安县| 米林县| 南阳市| 山阳县| 水富县| 宝山区| 光泽县| 龙南县| 宝山区| 陇南市| 江永县| 华蓥市|