在做單片機項目開發(fā)時,經(jīng)常需要用到鍵盤,而鍵盤絕大多時候使用的是單按鍵或矩陣鍵盤。矩陣鍵盤有許多優(yōu)點,我在這就不多說了,但有一點就是按鍵稍微多幾個就比較浪費口線了,尤其是需要將鍵盤引出時,那線多而長很是一個不爽。下面我就說說兩線式的多按鍵電路的設(shè)計與實現(xiàn),鍵盤只需兩根導(dǎo)線就搞定,前提是你的單片機系統(tǒng)要有多余的一根AD口線。說到這里有人會問了,我的系統(tǒng)沒有用到模擬采集,為了弄這個鍵盤再加一個AD芯片吧,這不是因小失大嗎?我要說的是現(xiàn)在帶有AD功能的單片機相當?shù)亩?,而且價格比沒帶的也貴不了多少。當然你選了不帶AD的就另當別論了。
我在做一個項目的按鍵時遇到幾個情況:1.產(chǎn)品外設(shè)較多,單片機I/O口除鍵盤就只剩下一個I/O了,再沒有多余的了;2.現(xiàn)場情況所限,鍵盤與主機板要有一段距離;3.鍵盤需要9個按鍵。根據(jù)以上的情況采用兩線鍵盤最為合適。電路如圖所示。
圖中 省略了部分按鍵,可以根據(jù)實際需要配置按鍵。此時就可以通過AD掃描讀取,可以根據(jù)AD值判斷有無按鍵按下或是那個按鍵按下。根據(jù)上圖電阻值(為方便舉例,全部取值為1K,可以自行取其它阻值,電壓平均分配就最好)可以算出:無按鍵按下,AD值為VCC;S1按下,AD值為0;S2按下,AD值為1/2VCC;同理,S3=2/3VCC;S4=3/4VCC;S5=4/5VCC;根據(jù)AD采集值比較最接近那個鍵值,則就是該按鍵。
使用此方方法需注意幾點:1.按鍵不可太多,這與AD分辨率有關(guān)系,否則將會檢測不準。以8位分辨率來說,共256點,每個按鍵的點為25點以上最好。即256/25=10,最多10個按鍵。具體可以自行實驗。
2.按鍵選用接觸性較好的按鍵。按鍵差的使用時間一長,容易產(chǎn)生接觸電阻,按鍵多容易誤檢測。
-
單片機
+關(guān)注
關(guān)注
6037文章
44558瀏覽量
635293 -
AD
+關(guān)注
關(guān)注
27文章
868瀏覽量
150328 -
鍵盤
+關(guān)注
關(guān)注
4文章
859瀏覽量
39669
發(fā)布評論請先 登錄
相關(guān)推薦
評論