當(dāng)前位置:首頁 > 工業(yè)控制 > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]按鍵開關(guān)是電子設(shè)備實(shí)現(xiàn)人機(jī)對(duì)話的重要器件之一。由于大部分按鍵是機(jī)械觸點(diǎn),在觸點(diǎn)閉合和斷開時(shí)都會(huì)產(chǎn)生抖動(dòng)。為避免抖動(dòng)引起誤動(dòng)作造成系統(tǒng)的不穩(wěn)定,就要求消除按鍵的抖動(dòng),確保按鍵每按一次只做一次響應(yīng)。隨著可

按鍵開關(guān)是電子設(shè)備實(shí)現(xiàn)人機(jī)對(duì)話的重要器件之一。由于大部分按鍵是機(jī)械觸點(diǎn),在觸點(diǎn)閉合和斷開時(shí)都會(huì)產(chǎn)生抖動(dòng)。為避免抖動(dòng)引起誤動(dòng)作造成系統(tǒng)的不穩(wěn)定,就要求消除按鍵的抖動(dòng),確保按鍵每按一次只做一次響應(yīng)。隨著可編程邏輯器件的綜合性能的不斷提高,它已經(jīng)象單片機(jī)一樣。廣泛應(yīng)用在各種數(shù)字邏輯領(lǐng)域。用可編程邏輯器件直接獲取鍵盤信息也得到廣泛的應(yīng)用。這里提出用VHDL語言編程的有限狀態(tài)機(jī)的設(shè)計(jì)方法來實(shí)現(xiàn)按鍵的消抖,經(jīng)仿真分析和下載實(shí)現(xiàn),這種方法設(shè)計(jì)的消抖電路能夠很好地實(shí)現(xiàn)電路功能,進(jìn)行快速按鍵時(shí)都能保證每按一次做一次的響應(yīng),且性能穩(wěn)定。

1 按鍵抖動(dòng)產(chǎn)生原因分析

絕大多數(shù)按鍵都是機(jī)械式開關(guān)結(jié)構(gòu),由于機(jī)械式開關(guān)的核心部件為彈性金屬簧片,因而在開關(guān)切換的瞬間會(huì)在接觸點(diǎn)出現(xiàn)來回彈跳的現(xiàn)象。雖然只是進(jìn)行了一次按鍵,結(jié)果在按鍵信號(hào)穩(wěn)定的前后出現(xiàn)了多個(gè)脈沖,如圖1所示。如果將這樣的信號(hào)直接送給微處理器掃描采集的話,將可能把按鍵穩(wěn)定前后出現(xiàn)的脈沖信號(hào)當(dāng)作按鍵信號(hào),這就出現(xiàn)人為的一次按鍵但微處理器以為多次按鍵現(xiàn)象。為了確保按鍵識(shí)別的準(zhǔn)確性,在按鍵信號(hào)抖動(dòng)的情況下不能進(jìn)入狀態(tài)輸入,為此就必須對(duì)按鍵進(jìn)行消抖處理,消除抖動(dòng)時(shí)不穩(wěn)定、隨機(jī)的電壓信號(hào)。機(jī)械式按鍵的抖動(dòng)次數(shù)、抖動(dòng)時(shí)間、抖動(dòng)波形都是隨機(jī)的。不同類型的按鍵其最長抖動(dòng)時(shí)間也有差別,抖動(dòng)時(shí)間的長短和按鍵的機(jī)械特性有關(guān),一般為5~10 ms,但是,有些按鍵的抖動(dòng)時(shí)間可達(dá)到20 ms,甚至更長。所以,在具體設(shè)計(jì)中要具體分析,根據(jù)實(shí)際情況來調(diào)整設(shè)計(jì)。


2 按鍵消抖電路的設(shè)計(jì)

按鍵消抖一般采用硬件和軟件消抖兩種方法。硬件消抖是利用電路濾波的原理實(shí)現(xiàn),軟件消抖是通過按鍵延時(shí)來實(shí)現(xiàn)。在微機(jī)系統(tǒng)中一般都采用軟件延時(shí)的消抖方法。在用可編程邏輯器件FPGA/CPLD設(shè)計(jì)數(shù)字系統(tǒng)中,也可以用VHDL語言設(shè)計(jì)相應(yīng)的時(shí)序和邏輯電路,對(duì)按鍵信號(hào)進(jìn)行處理,同樣可以達(dá)到消抖目的。本文利用Altera公司的可編程邏輯器件CPLD和QuartusⅡ,設(shè)計(jì)性能可靠的按鍵消抖電路。

2.1 按鍵消抖電路設(shè)計(jì)原理

按鍵消抖的關(guān)鍵是提取穩(wěn)定的低電平(或高電平)狀態(tài),濾除按鍵穩(wěn)定前后的抖動(dòng)脈沖。在用基于VHDL語言的時(shí)序邏輯電路設(shè)計(jì)按鍵消抖電路時(shí),可以用一個(gè)時(shí)鐘脈沖信號(hào)對(duì)按鍵狀態(tài)進(jìn)行取樣,當(dāng)?shù)谝淮尾蓸拥降碗娖綍r(shí),啟動(dòng)延時(shí)電路,延時(shí)結(jié)束后,再對(duì)按鍵信號(hào)進(jìn)行連續(xù)三次取樣,如果三次取樣都為低電平,則可以認(rèn)為按鍵已經(jīng)處在穩(wěn)定狀態(tài),這時(shí)輸出一個(gè)低電平的按鍵確認(rèn)信號(hào),如果連續(xù)三次的取樣中,至少有一次是高電平,則認(rèn)為按鍵仍處在抖動(dòng)狀態(tài),此時(shí)不進(jìn)行按鍵確認(rèn),按鍵輸出信號(hào)為高電平。

2.2 按鍵消抖電路設(shè)計(jì)

該控制電路采用VHDL語言的有限狀態(tài)機(jī)的設(shè)計(jì)方法來描述和實(shí)現(xiàn),其狀態(tài)轉(zhuǎn)換圖如圖2所示。


電路的復(fù)位信號(hào)Reset有效時(shí),電路進(jìn)入復(fù)位狀態(tài)S0,在S0狀態(tài)下時(shí)鐘信號(hào)CLK以一定的頻率采樣按鍵輸入信號(hào)Key_in,如果采樣到Key_in=‘1’則停留在S0狀態(tài),并繼續(xù)采樣按鍵輸入信號(hào)的狀態(tài),一旦采樣到輸入信號(hào)是低電平,即Key_in=‘0’,則轉(zhuǎn)入S1延時(shí)狀態(tài),進(jìn)行消抖延時(shí),當(dāng)延時(shí)結(jié)束時(shí)Delay_end=‘1’,則轉(zhuǎn)入在S2狀態(tài),在此狀態(tài)下時(shí)鐘信號(hào)CLK以一定頻率采樣按鍵輸入Key_in的狀態(tài),如果采樣到Key_in為高電平即Key_in=‘1’則轉(zhuǎn)回狀態(tài)S0,表示按鍵仍處在抖動(dòng)狀態(tài),如果采樣到Key_in=‘O’,則轉(zhuǎn)入狀態(tài)S3;狀態(tài)S3,S4的轉(zhuǎn)換過程和條件跟S2相同,在S4狀態(tài)下,如果Key_in=‘0’則轉(zhuǎn)入S5狀態(tài),當(dāng)?shù)竭_(dá)狀態(tài)S5時(shí).表示經(jīng)過S2,S3,S4三個(gè)連續(xù)狀態(tài)檢測按鍵輸入Key_in的狀態(tài)都為‘0’,則認(rèn)為按鍵處在穩(wěn)定狀態(tài),并在S5輸出按鍵確認(rèn)信號(hào)Key_confirm=‘1’。同時(shí)在狀態(tài)S5下時(shí)鐘信號(hào)CLK檢測按鍵輸入狀態(tài),當(dāng)檢測到按鍵輸入Key_in=‘0’,表示按鍵仍未釋放,則停留在S5繼續(xù)檢測按鍵輸入信號(hào)狀態(tài),如果檢測到Key_in=‘1’,表示按鍵已經(jīng)釋放,則轉(zhuǎn)回狀態(tài)S0,等待下一次按鍵操作。

3 按鍵消抖電路的仿真分析

消抖電路的仿真圖如圖3所示。當(dāng)復(fù)位信號(hào)Reset=‘0’時(shí),狀態(tài)機(jī)Key處在S0狀態(tài),同時(shí)以CLK的時(shí)鐘頻率采樣按鍵輸入信號(hào)Din的狀態(tài),當(dāng)CLK第一次采樣到Din為低電平時(shí),此時(shí)可能發(fā)生了按鍵操作,隨即狀態(tài)機(jī)Key進(jìn)入S1消抖延時(shí)狀態(tài),當(dāng)延時(shí)結(jié)束時(shí)delay_end=‘1’(延時(shí)結(jié)束信號(hào)),跟接著狀態(tài)機(jī)KEY的S2,S3,S4連續(xù)三個(gè)狀態(tài)對(duì)按鍵輸入信號(hào)Din進(jìn)行采樣,當(dāng)三個(gè)狀態(tài)下采樣到Din信號(hào)都是低電平,則轉(zhuǎn)入S5狀態(tài),并產(chǎn)生按鍵確認(rèn)信號(hào)Key_confirm=‘1’,同時(shí)在S5狀態(tài)下等待按鍵釋放,在此狀態(tài)下當(dāng)CLK時(shí)鐘信號(hào)檢測到Din為高電平時(shí)轉(zhuǎn)回狀態(tài)S0。因按鍵釋放瞬間也會(huì)發(fā)生抖動(dòng),所以由波形圖可以看出,當(dāng)按鍵釋放瞬間由狀態(tài)S5轉(zhuǎn)回狀態(tài)S0,在S0狀態(tài)下,因按鍵抖動(dòng)CLK時(shí)鐘又檢測到Din為低電平,隨即轉(zhuǎn)入S1進(jìn)行消抖延時(shí),經(jīng)過S1的消抖延時(shí)后,按鍵已經(jīng)穩(wěn)定,Din為穩(wěn)定的高電平,所以在狀態(tài)S2檢測到Din為高電平,則轉(zhuǎn)入S0狀態(tài),到此時(shí)完成一次按鍵的操作,等待下一次按鍵操作,如果沒有按鍵操作,即按鍵沒按下,則一直保持在狀態(tài)S0。


4 結(jié) 語

采用有限狀態(tài)機(jī)方法設(shè)計(jì)按鍵消抖電路,再根據(jù)按鍵的特性設(shè)定合適的延時(shí)時(shí)間(一般10 ms)后,通過仿真分析及實(shí)驗(yàn)驗(yàn)證,能夠起到很好的消抖效果,而且性能穩(wěn)定,能確保每一次按鍵操作,產(chǎn)生一次按鍵確認(rèn),可廣泛應(yīng)用于可編程邏輯器件的鍵盤掃描設(shè)計(jì)中。



參考文獻(xiàn):

[1].CPLDdatasheethttp://www.dzsc.com/datasheet/CPLD_1136600.html.


來源:miaomi0次

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉