自學單片機第二十九篇:標準鍵盤的應用

2020-12-03 小亮談電氣

之前我們已經就矩陣按鍵做了簡單的介紹。也對按鍵的工作原理進行了分析和實踐。今天,我們就4*4矩陣按鍵做一個詳細的介紹,因為生產生活中,使用最多的就是這類按鍵,我們可以把4*4按鍵作為一個模塊,拿來就用,市場上也有很多現成的模塊,我們需要了解其基本構造就可以使用了,主要是區分行和列。後期學習中斷後,會更加方便。

這裡我們就開始說4*4矩陣按鍵的內容。首先是看下市場上的一些按鍵模塊。

具體這個是幹什麼的就不是很清楚了。一般的,我們都會把左側的3*3位置,設定為123456789這九個數字,下方的三個和右側的四個,除了有0外,另外六個可以自由設計。儘管功能各不相同,但是,我們把按鍵的含義擦除,後面的模塊都是4*4鍵盤,沒有什麼不同,輸出也都是八根線,所以我們只要掌握這個4*4的檢測方法,一法通萬法皆通。

使用中,我們僅需注意行列就可以了。

使用P1埠進行控制,採用高四位控制行,第四位控制列,以後都是這個標準,就會得出4*4矩陣按鍵的標準鍵值表。由於表格上傳會出現錯誤,就使用文字描述了。

這是埠的鍵值2進位真值表

第一行:0111 0111/0111 1011/0111 1101/0111 1110

第二行:1011 0111/1011 1011/1011 1101/1011 1110

第三行:1101 0111/1101 1011/1101 1101/1101 1110

第四行:1110 0111/1110 1011/1110 1101/1110 1110

這是埠鍵值的16進位真值表

第一行:0X77++0X7B++0X7D++0X7E

第二行:0XB7++0XBB++0XBD++0XBE

第三行:0XD7++0XDB++0XDD++0XDE

第四行:0XE7++0XEB++0XED++0XEE

我們單片機掃描用的是二進位的真值表,但是代碼需要書寫為16進位的真值表。只要我們的控制方式不變,這個真值就不會變化,即使採用P0/P2/P3也是一樣的。

接線方法如下。

h1234對應的是P1的P1.0/P1.1/P1.2/P1.3

L1234對應的是P1的P1.4/P1.5/P1.6/P1.7

然後就是通過程序的掃描來確認按鍵是否按下,以及是哪個按鍵按下了。

掃描流程依然是,先分行置零,然後對讀到的鍵值進行消抖,接著判斷鍵值是否標準,然後依據鍵值做出動作。

由於我們沒有學習中斷,所以就簡單些的應用來說明問題。

使用兩種同種類的鍵盤來分別展示。

這兩種鍵盤都是4*4的變形,在後期便於我們進行繪製和測試,每次都去繪製16個按鍵和連線還是比較費時間的。當然生活中,也有相應的模塊,如果有資金可以購置,這樣就無需自己焊接了。若僅僅是學習,焊接一個矩陣當然是最好的,既鍛鍊動手能力,又可以使用。

在鍵值的讀取上,我們可以通過逐行掃描,當然不止這一種方式,還有一種通過運算可以得到相應的鍵值,也是很好的。

方法是:1,首先將所有行置零,然後讀取列數據,保存。

2,然後將所有列置零,然後讀取行數據,保存。

3,將行列數據相加,就是鍵值。

示例:假設我摁下了3行2列的按鍵。

1,行置零,讀取到0000 1011

2,列置零,讀取到1101 0000

3,數據和,0000 1011+1101 0000=1101 1011

跟之前的我們逐行掃描相比,這個會更快些。接下來,我們就使用這種方式,寫下代碼。

這裡將消抖放在了主函數中,是為了看起來更加清楚,方便了解其工作原理,如果想要簡潔一些,可以將消抖部分,放在按鍵處理函數中。不影響按鍵掃描。

按鍵處理函數中的P0輸出,是我隨機寫的,沒有實際含義,主要是讓不同的按鍵按下顯示不同的現象,用於判斷按鍵是否正常被掃描到了。還有在程序中,按鍵掃描後,我沒有添加按鍵是否抬起的判斷,如果是在一些有運算的場合,建議添加上,否則會造成連續運算。

接下來我們使用兩種按鍵來仿真下運行情況。

運行仿真後,使用系統自帶的鍵盤沒有響應。

使用我們自己繪製的按鍵可以正常驅動,動作也正常響應。具體原因不得而知,估計是自帶鍵盤代碼不支持我這種操作。為此我們再來測試下,使用行列單獨掃描的結果,看是否也是不能用,如果都不能用,後期操作,將會比較費時間,因為繪製按鍵矩陣真的很費事。

行列掃描可以正常使用,還好還好,這就說明是程序的支持問題,我們的代碼是沒有問題的,以後為了方便,我還是使用行列掃描的代碼。

好了關於矩陣按鍵,就介紹到這裡,接下來的一段時間,會製作一些實例來練習下之前學習的知識。鞏固下。近段時間會更新的慢些,家裡的寶貝長大了,會鬧人啦,帶起來比較費時間呢。多謝理解。

相關焦點

  • 自學單片機第九篇:基礎知識--計算機基礎操作
    電腦的硬體,臺式機和筆記本是一樣的,從上到下,顯示器,攝像頭,鍵盤,滑鼠,主機,也就這幾個,外設上,路由器,音箱,藍牙。然後主機中,電源,主板,散熱,內存條,硬碟,光碟機。這些東西匯總到一起,就是我們用的電腦了。
  • 自學單片機第十篇:基礎知識--萬用表的使用
    #自學單片機##自學單片機第九篇:基礎知識--計算機基礎操作自學單片機第八篇:基礎知識--C語言基礎自學單片機第七篇:基礎知識--物理<電學部分>
  • 自學單片機第十二篇上:首次測試設備——軟體測試
    由於準備比較多,講得儘可能詳細,所以分為兩篇,上篇是軟體測試,下篇是硬體測試。所有材料:1,安裝軟體的電腦,至少安裝了keil和ISP,keil用於編輯程序,ISP用於把程序下載到單片機中。沒有這兩個,我們即使首次測試成功,接下來的學習也會很艱難。
  • 自學單片機第十一篇:基礎知識--電工常識
    自學單片機第十篇:基礎知識--萬用表的使用
  • 分支機構動態 | 中國風景園林學會植物保護專業委員會第二十九次...
    中國風景園林學會植物保護專業委員會第二十九次學術研討會於2020年10月20日至23日在河北省保定市召開。會議主題:「守正」與「開拓」——新時代園林植保創新發展之路。
  • 黔西縣第十七屆人大常委會召開第二十九次會議
    9月21日,黔西縣第十七屆人大常委會召開第二十九次會議。縣人大常委會主任羅智瓊,副主任殷從隆、楊開祥、敖西洛、林琴及常委會組成人員出席會議。縣人大常委會黨組成員曾星、縣人民政府副縣長朱紹順、縣人民法院、縣人民檢察院、縣監委、縣委組織部、縣人大常委會相關委室、縣政府辦及各鄉鎮(街道)相關負責人列席會議。
  • 精測電子:第三屆董事會第二十九次會議決議
    精測電子:第三屆董事會第二十九次會議決議 時間:2020年12月25日 21:50:52&nbsp中財網 原標題:精測電子:第三屆董事會第二十九次會議決議公告證券代碼:300567 證券簡稱:精測電子 公告編號:2020-168 武漢精測電子集團股份有限公司 第三屆董事會第二十九次會議決議公告 本公司及董事會全體成員保證信息披露的內容真實
  • 一種嵌入式PC非標準鍵盤電路設計
    打開APP 一種嵌入式PC非標準鍵盤電路設計 秩名 發表於 2014-10-28 18:10:21   隨著嵌入式系統的飛速發展
  • [董事會]雪 萊特:第五屆董事會第二十九次會議決議公告
    [董事會]雪 萊 特:第五屆董事會第二十九次會議決議公告 時間:2019年01月07日 18:20:46&nbsp中財網 一、董事會會議召開情況 廣東雪萊特光電科技股份有限公司(以下簡稱「公司」「本公司」或「雪萊特」)第五屆董事會第二十九次會議於2019年1月4日以現場結合通訊表決方式在公司會議室召開。本次會議的通知已於2018年12月29日以郵件形式發出。
  • 新能泰山:第八屆董事會第二十九次會議決議
    新能泰山:第八屆董事會第二十九次會議決議 時間:2020年04月20日 21:17:15&nbsp中財網 原標題:新能泰山:第八屆董事會第二十九次會議決議公告相關事前認可和獨立意見詳見同日刊載於巨潮資訊網(www.cninfo.com.cn)上的《山東新能泰山發電股份有限公司獨立董事對第八屆董事會第二十九次會議有關事項的事前認可》、《山東新能泰山發電股份有限公司獨立董事對第八屆董事會第二十九次會議有關事項的獨立意見》。
  • 自學單片機第二十三篇:混合輸入
    其實就混合而言,前邊已經做了講解,多點和單點的結合,已經算是比較複雜的了,對於初學者,這類處理方法,可以完成很多實際應用的處理了。但是考慮到一個埠的復用和其他原因,我們會就這類按鍵的操作,再做一次詳細的講解。
  • 第二十九堂課 如何從打麻將中看清一個人的性格?
    漢森說這篇先寫到這裡,到目前為止這篇是第二十九篇。關於麻將更多的是興趣,學會做好牌品的人更重要,下一篇,我們來寫點麻將中的歪門邪道,讓大家看得更清晰。
  • 亨通光電:第七屆董事會第二十九次會議決議公告
    證券代碼:600487 股票簡稱:亨通光電 公告編號:2020-108號        轉債代碼:110056 轉債簡稱:亨通轉債        轉股代碼:190056 轉股簡稱:亨通轉股        江蘇亨通光電股份有限公司        第七屆董事會第二十九次會議決議公告
  • 精測電子:獨立董事關於第三屆董事會第二十九次會議相關事項的獨立...
    精測電子:獨立董事關於第三屆董事會第二十九次會議相關事項的獨立意見 時間:2020年12月25日 21:50:52&nbsp中財網 原標題:精測電子:獨立董事關於第三屆董事會第二十九次會議相關事項的獨立意見
  • 德藝文創:第三屆董事會第二十九次會議決議公告
    證券代碼:300640 證券簡稱:德藝文創 公告編號:2020-104德藝文化創意集團股份有限公司第三屆董事會第二十九次會議決議公告本公司及董事會全體成員保證信息披露內容的真實、準確和完整,沒有虛假記載、誤導性陳述或重大遺漏。
  • 第二十九個國際殘疾人日 首府舉辦殘健共融趣味運動會
    呼和浩特新聞網12月5日訊 據《呼和浩特晚報》報導(記者 劉芳)為慶祝第二十九個國際殘疾人日,進一步推動殘疾人事業發展,讓殘疾人走出家門、融入社會、共享陽光,呼和浩特市殘疾人聯合會於12月4日在呼和浩特體育訓練館舉辦了殘健共融趣味運動會。
  • 臨沭調解第二十九期
    臨沭調解第二十九期 2021-01-04 14:53 來源:澎湃新聞·澎湃號·政務
  • 51單片機系統與標準PC鍵盤的接口模塊設計
    對於不同的單片機系統需要進行專用的鍵盤硬體設計和編程調試,通用性差,使項目開發複雜化。標準PC鍵盤在工藝與技術上都已相當成熟,而且工作穩定,價格低廉。本設計實現了一個接口模塊,它將標準PC鍵盤發出的位置掃描碼,變換為標準的ASCII碼和OEM掃描碼或Windows虛擬鍵代碼,再以並行或串行方式傳送給上位單片機。
  • [教程] 王濱《現代鍵盤演奏全揭秘》之進階篇第一課(Give it up解析)
    最新視頻教程《現代鍵盤演奏全揭秘》80集已進入製作尾聲期,預計2016年11月上市與廣大鍵盤演奏愛好者見面,期間歷時三年遠赴大洋彼岸拉斯維加斯
  • 清水河縣殘疾人聯合會 舉辦紀念第二十九個國際殘疾人日暨全縣殘疾...
    清水河縣殘疾人聯合會 舉辦紀念第二十九個國際殘疾人日暨全縣殘疾人和殘疾人工作者趣味運動會 2020-12-04 21:50 來源:澎湃新聞·澎湃號·政務