色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

單片機實現按鍵的電路和程序設計資料說明

Wildesbeast ? 來源:單片機教程網 ? 作者:單片機教程網 ? 2020-10-06 18:14 ? 次閱讀

單片機應用系統中,按鍵主要有兩種形式:1、直接按鍵; 2、矩陣編碼鍵盤。直接按鍵的每個按鍵都單獨接到單片機的一個I/O口上,直接按鍵則通過判斷按鍵端口的電位即可識別按鍵操作;而矩陣鍵盤通過行列交叉按鍵編碼進行識別。下面我們以S51增強型單片機實驗板的直接按鍵來學習單片機輕觸按鍵在單片機系統中的應用。

S51增強型單片機輕觸按鍵原理圖

圖 1

一、按鍵時序分析

通常所用的按鍵為輕觸機械開關,正常情況下按鍵的接點是斷開的,當我們按壓按鈕時,由于機械觸點的彈性作用,一個按鍵開關在閉合時不會馬上穩定地接通,在斷開時也不會一下子斷開。因而機械觸點在閉合及斷開的瞬間均伴隨有一連串的抖動,按鍵的時序如下圖2所示,抖動時間的長短由按鍵的機械特性及操作人員按鍵動作決定,一般為5ms~20ms;按鍵穩定閉合時間的長短是由操作人員的按鍵按壓時間長短決定的,一般為零點幾秒至數秒不等。

輕觸按鍵操作時序示意圖

圖 2

從上面圖2中我們可以看到,一次完整的擊鍵過程,包含以下5個階段:

1. 等待階段: 此時按鍵尚未按下,處于空閑階段。

2. 前沿(閉合)抖動階段:此時按鍵剛剛按下,但按鍵信號還處于抖動狀態,這個時間一般為5~20ms。為了確保按鍵操作不會誤動作,此時必須有個前沿消抖動延時。

3. 鍵穩定階段:此時抖動已經結束,一個有效的按鍵動作已經產生。系統應該在此時執行按鍵功能;或將按鍵所對應的鍵值記錄下來,待按鍵釋放時再執行。

4. 后沿(釋放)抖動階段:一般來說,考究一點的程序應該在這里再做一次消抖延時,以防誤動作。但是,如果前面“前沿抖動階段”的消抖延時時間取值合適的話,可以忽略此階段。

5. 按鍵釋放階段:此時后沿抖動已經結束,按鍵已經處于完全釋放狀態,如果按鍵是采用釋放后再執行功能,則可以在這個階段進行按鍵操作的相關處理。

二、按鍵實驗例程

下面我們通過幾個實驗例程來學習按鍵掃描編程及按鍵軟件消抖動的編程,通過這些對比實驗,給大家一個更加感性的認識。

1、按鍵K1控制LED指示燈實驗:本程序通過實驗板上的按鍵K1控制P1.0上的LED亮滅。程序功能如下:當K1按下開關時指示燈亮,再次按下時指示燈滅。

輕觸按鍵K1控制指示燈的實驗例程(沒有軟件消抖動處理) 實驗結果分析:

ORG 0000H

AJMP START ;跳轉到初始化程序

ORG 0033H

START:MOV SP,#60H ;SP初始化

MOV P3,#0FFH ;端口初始化

MAIN: JB P3.2,MAIN ;檢測按鍵K1有沒有按下

CPL P1.0 ;執行按鍵命令,改變P1.0指示燈狀態

JNB P3.2,$ ;等待按鍵K1釋放

AJMP MAIN ;返回重新檢測按鍵

END

由于本實驗程序中沒有進行軟件消抖動延時處理,我們把程序燒寫到單片機上運行時,多次按壓K1控制LED的亮滅,發控制不太穩定,大約按十次,LED發光二極管的輸出狀態有2到3次是錯誤的。

這就是因為沒有軟件去抖動的原因,在按鍵的前沿抖動或后沿抖動期間,抖動脈沖均有可能被程序檢測而錯誤執行,此時相當于按鍵被按壓和松開了N次,LED的輸出狀態也已經改變了N次,故松開按鍵后LED的狀態是一個隨機結果。

2、改進的按鍵K1控制LED指示燈實驗:本程序通過實驗板上的按鍵K1控制P1.0上的LED亮滅。程序功能如下:當K1按下開關時指示燈亮,再次按下時指示燈滅。

改進的輕觸按鍵K1控制指示燈的實驗例程(經過軟件消抖動處理) 實驗結果分析:

ORG 0000H

AJMP START ;跳轉到初始化程序

ORG 0033H

START:MOV SP,#60H ;SP初始化

MOV P3,#0FFH ;端口初始化

MAIN: JB P3.2,MAIN ;檢測按鍵K1有沒有按下

ACALL YS20ms ;消前沿抖動延時,實現軟件去抖動

JB P3.2,MAIN ;再次檢測按鍵,如果為高電平,則是抖動

CPL P1.0 ;執行按鍵命令,改變P1.0指示燈狀態

JNB P3.2,$ ;等待按鍵K1釋放

AJMP MAIN ;返回重新檢測按鍵

YS20ms:

MOV R7,#40 ;延時20ms子程序

YS1: MOV R6,#229

DJNZ R6,$

DJNZ R7,YS1

RET

END

由于本實驗程序中對按鍵的前沿抖動進行20ms的軟件消抖動延時處理,我們把程序燒寫到單片機上運行,多次按壓K1控制LED的亮滅,發控制就很穩定了,不會出現控制錯誤的現象。

通過本實驗,可以看出軟件去抖動延時還是很重要的,消抖動延時時間一般在5~20ms之間,實際應用時候根據實驗取得最佳延時。

本程序沒有對按鍵松開時的后沿抖動進行消抖動,如果在要求很嚴格的系統中,建議增加后沿消抖動延時處理,這樣可以確保按鈕不會產生誤動作。

3、帶按鍵音效的按鍵掃描實驗例程:下面的按鍵掃描實驗例程除了有軟件消抖動功能外,還具有按鍵音效,當按壓按鍵K1~K4時候,按鍵號碼會顯示在實驗板的數碼管上,同時可以聽到按鍵音。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • led
    led
    +關注

    關注

    242

    文章

    23472

    瀏覽量

    665623
  • 單片機
    +關注

    關注

    6050

    文章

    44687

    瀏覽量

    641170
  • 程序
    +關注

    關注

    117

    文章

    3806

    瀏覽量

    81708
收藏 人收藏

    評論

    相關推薦

    PIC系列單片機程序設計基礎

    PIC系列單片機程序設計基礎
    發表于 10-16 14:27 ?9次下載
    PIC系列<b class='flag-5'>單片機</b><b class='flag-5'>程序設計</b>基礎

    PIC單片機原理與程序設計

    PIC單片機原理與程序設計
    發表于 10-16 14:57 ?16次下載
    PIC<b class='flag-5'>單片機</b>原理與<b class='flag-5'>程序設計</b>

    單片機C語言程序設計的20例基礎程序設計詳細資料概述

    本文檔介紹的主要內容是20例基于單片機C語言的基礎程序設計詳細資料概述
    發表于 06-08 08:00 ?88次下載
    <b class='flag-5'>單片機</b>C語言<b class='flag-5'>程序設計</b>的20例基礎<b class='flag-5'>程序設計</b>詳細<b class='flag-5'>資料</b>概述

    單片機基礎教程之匯編語言程序設計知識的詳細資料說明

    本文檔的主要內容詳細介紹的是單片機基礎教程之匯編語言程序設計知識的詳細資料說明包括了:1 編程的步驟、方法和技巧,2 匯編語言源程序的編輯和
    發表于 01-28 16:47 ?10次下載
    <b class='flag-5'>單片機</b>基礎教程之匯編語言<b class='flag-5'>程序設計</b>知識的詳細<b class='flag-5'>資料</b><b class='flag-5'>說明</b>

    AVR單片機讀卡器程序設計資料說明

    本文檔的主要內容詳細介紹的是AVR單片機讀卡器程序設計資料說明。
    發表于 01-29 10:04 ?14次下載
    AVR<b class='flag-5'>單片機</b>讀卡器<b class='flag-5'>程序設計</b>的<b class='flag-5'>資料</b><b class='flag-5'>說明</b>

    AD轉換器CS5550與單片機的接口程序設計的論文資料說明

    本文檔的主要內容詳細介紹的是AD轉換器CS5550與單片機的接口程序設計的論文資料說明。分析雙通道低成本A/D轉換器CS5550的接口特點,以 ATmega16
    發表于 01-29 15:41 ?35次下載
    AD轉換器CS5550與<b class='flag-5'>單片機</b>的接口<b class='flag-5'>程序設計</b>的論文<b class='flag-5'>資料</b><b class='flag-5'>說明</b>

    單片機的計時程序設計資料免費下載

    本文檔的主要內容詳細介紹的是單片機的計時程序設計資料免費下載。
    發表于 03-20 16:19 ?6次下載
    <b class='flag-5'>單片機</b>的計時<b class='flag-5'>程序設計</b><b class='flag-5'>資料</b>免費下載

    51單片機按鍵檢測和信號函數仿真的詳細資料說明

    本文檔的主要內容詳細介紹的是51單片機按鍵檢測和信號函數仿真的詳細資料說明,在單片機中會遇到識別按鍵
    發表于 04-11 18:22 ?4次下載
    51<b class='flag-5'>單片機</b><b class='flag-5'>按鍵</b>檢測和信號函數仿真的詳細<b class='flag-5'>資料</b><b class='flag-5'>說明</b>

    使用51單片機進行廣告屏和按鍵掃描的C語言程序和設計資料說明

    本文檔的主要內容詳細介紹的是使用51單片機進行廣告屏和按鍵掃描的C語言程序和設計資料說明
    發表于 05-05 08:00 ?1次下載
    使用51<b class='flag-5'>單片機</b>進行廣告屏和<b class='flag-5'>按鍵</b>掃描的C語言<b class='flag-5'>程序</b>和設計<b class='flag-5'>資料</b><b class='flag-5'>說明</b>

    STC12C5616AD單片機實現16位AD按鍵電路圖和源代碼等資料說明

    本文檔的主要內容詳細介紹的是STC12C5616AD單片機實現16位AD按鍵電路圖和源代碼等資料說明
    發表于 11-15 08:00 ?70次下載
    STC12C5616AD<b class='flag-5'>單片機</b><b class='flag-5'>實現</b>16位AD<b class='flag-5'>按鍵</b>的<b class='flag-5'>電路</b>圖和源代碼等<b class='flag-5'>資料</b><b class='flag-5'>說明</b>

    使用單片機實現按鍵發音的程序和仿真電路圖免費下載

    本文檔的主要內容詳細介紹的是使用單片機實現按鍵發音的程序和仿真電路圖免費下載。
    發表于 06-02 17:04 ?10次下載
    使用<b class='flag-5'>單片機</b><b class='flag-5'>實現</b><b class='flag-5'>按鍵</b>發音的<b class='flag-5'>程序</b>和仿真<b class='flag-5'>電路</b>圖免費下載

    使用單片機實現按鍵發音的程序和仿真電路圖免費下載

    本文檔的主要內容詳細介紹的是使用單片機實現按鍵發音的程序和仿真電路圖免費下載。
    發表于 06-03 15:48 ?7次下載
    使用<b class='flag-5'>單片機</b><b class='flag-5'>實現</b><b class='flag-5'>按鍵</b>發音的<b class='flag-5'>程序</b>和仿真<b class='flag-5'>電路</b>圖免費下載

    使用單片機實現門鈴設計的程序資料說明

    本文檔的主要內容詳細介紹的是使用單片機實現門鈴設計的程序資料說明。
    發表于 06-08 17:20 ?10次下載
    使用<b class='flag-5'>單片機</b><b class='flag-5'>實現</b>門鈴設計的<b class='flag-5'>程序</b>和<b class='flag-5'>資料</b><b class='flag-5'>說明</b>

    單片機按鍵使用程序 (51單片機

    單片機獨立按鍵使用程序 (51單片機)獨立按鍵單片機中很重要的一個器件,在這篇文章里,通過這個
    發表于 11-11 18:36 ?108次下載
    <b class='flag-5'>單片機</b><b class='flag-5'>按鍵</b>使用<b class='flag-5'>程序</b> (51<b class='flag-5'>單片機</b>)

    基于51單片機的串口測試程序設計資料程序文件

    基于51單片機的串口測試程序設計資料程序文件
    發表于 04-27 15:05 ?0次下載
    主站蜘蛛池模板: 久久久久久久久免费视频 | 猪蜜蜜网站在线观看电视剧 | 好男人在线高清WWW免费观看 | 久久午夜夜伦鲁鲁片无码免费 | 无遮18禁在线永久免费观看挡 | 国产成人免费高清在线观看 | 色怕怕| 中文无码乱人伦中文视频播放 | 国产人妻人伦精品9 | 国产精品高清m3u8在线播放 | 男同志video最新猛男 | 中文免费视频 | 亚洲精品视频免费观看 | 光棍天堂在线a | 欧美久久综合网 | 日本特交大片免费观看 | 天堂视频在线观看免费完整版 | 亚洲高清国产拍精品5g | 观赏女性排尿 | 亚洲高清视频在线观看 | 老师的丝袜脚 | 偷窥美女3 | 欧美三级aaa | 国产在线自天天人人 | 亚洲手机在线人成视频 | 花蝴蝶免费版高清版 | 3d无遮挡h肉动漫在线播放 | 亚洲成片在线看 | 中文字幕 亚洲 有码 在线 | 午夜无码片在线观看影院 | 久久看片网| 无码人妻精品一区二区蜜桃色欲 | 国产 亚洲 另类 欧美 在线 | 亚洲精品久久久久中文字幕二区 | bl被教练啪到哭H玉势 | 亚洲 欧美无码原创区 | 综合色就爱涩涩涩综合婷婷 | 国产婷婷色一区二区三区在线 | 无人区乱码区1卡2卡三卡在线 | 麻豆天美国产一区在线播放 | 大学生一级毛片免费看 |