觸發按鍵,簡稱按鍵,是電路設計中常用的器件之一。種類很多,有貼片式的,有直插式的,有四條腿的,也有兩條腿的。一般根據需求,進行高低、大小的選擇。 如上圖所示,樣式非常多。記得我第一次去中發買按鍵的時候,老板問我要什么樣的,我也不知道,就說常用的就行。老板嘿嘿一笑,知道我是新人,就拿了幾款常見的給我選。 現在自然不會這么笨,一般來說,選擇的參數也就這么幾項,尺寸、高度、封裝方式。例如我想買一種按鍵,我就直接問老板:6*6*5,四腳貼片的按鍵有木有? 6*6是什么意思?占地面積,單位是毫米,就是說長和寬都是6mm的。 5是高度,按鍵整體高度,單位是毫米。要求精細的,會說明按鍵座的高度和按鍵頭的高度。 國產按鍵最上面的那個按鍵頭一般都是硬塑料的,韓國、日本還有臺灣的按鍵,有很多是硅膠的頭,按的時候手感挺不錯的,不過價格也略貴。 什么樣的按鍵是好的按鍵?我跟一個賣了十多年貨的老板聊過這個問題,拋開用料問題,就說觸發的效果,只要買的時候按一下那個按鍵,聽它那個聲音,聲音越清脆、越響,效果越好,當然了,價格越貴。 接下來說應用電路,如下圖所示,這是常見的應用電路: 檢測方式有兩種,一種是掃描檢測,另一種是中斷檢測。這次先說第一種,什么是掃描檢測? 就是單片機每隔一段時間,就去檢測一下IO口的狀態,未觸發的時候,該引腳是高電平,觸發的時候是低電平。 有人會有疑問,這種方式會不會有遺漏?基本不會,因為單片機以微秒甚至納秒的級別運行指令,而觸發一次按鍵至少需要幾十毫秒,汽車電子里面用到的觸發按鍵,它的觸發時間到了100毫秒。只要掃描次數足夠,基本不會有遺漏。 什么是消抖?檢測出鍵閉合后執行一個延時程序,5ms~10ms的延時,讓前沿抖動消失后再一次檢測鍵的狀態,如果仍保持閉合狀態電平,則確認為真正有鍵按下。當檢測到按鍵釋放后,也要給5ms~10ms的延時,待后沿抖動消失后才能轉入該鍵的處理程序。 為什么要消抖?因為按鍵按下或者抬起時,電平會有劇烈的抖動,這些抖動會對按鍵的狀態判斷造成干擾。因此要消抖。 這次的程序用按鍵觸發LED,每次按下的時候,LED的狀態進行翻轉。 好了,廢話少說,上程序 下載鏈接:
按鍵觸發LED.zip
(79.83 KB, 下載次數: 77)
2015-3-20 23:04 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
今天先寫這些,明個見!
|