• <td id="iauqw"></td>
  • <li id="iauqw"><tbody id="iauqw"></tbody></li>
  • <td id="iauqw"><wbr id="iauqw"></wbr></td><bdo id="iauqw"></bdo>

    4×4矩陣式鍵盤電路的改進

    發布時間:2016-3-4 11:07    發布者:designapp
    關鍵詞: 矩陣式鍵盤
    51單片機系統中,經常使用4×4鍵盤,一般情況下,都是使用一個8位的接口,外接16個按鍵。

    下圖就是一個常規的4×4鍵盤電路圖。
      


    這種常規的矩陣鍵盤電路,相信大家都司空見慣了,好多人都會編寫它的驅動程序。

    圖中使用了P0口的8個引腳(P0.0~P0.7),分別驅動鍵盤的行和列。按鍵的編號,在圖中分別標注了0~F。

    檢測按鍵的一般的思路是在四個列線,分別輸出一個低電平,然后輸入行線,逐行檢測是否存在低電平。

    如果在某行有低電平出現,就說明該行、列的交叉點上的按鍵,被按下了。

    其實,這些行、列引線,是“分時”工作的,當在某一列輸出低電平的時候,其它的列,輸出的就是高電平。

    如果利用這些輸出高電平的列,進行輸入,那么就可以極大的節省IO接口的引線數量。

    基于這個道理,在上圖中,下面的四個列驅動引線(P0.4~P0.7),就完全可以省去,只是使用行驅動的引腳(P0.0~P0.3)來分時輸出低電平即可。

    電路見下圖。
      


    為了對引腳之間進行隔離,圖中加上了四個二極管,確保只有在引腳輸出低電平的時候,方可把鍵盤中相應的列置為0。

    針對這個電路,對按鍵的檢測方法,和常規的4×4鍵盤檢測思路是相同的,例如:

    當在P0.0輸出低電平,即最左邊的列為0,這時檢測P0.1、P0.2及P0.3是否為0,可以判斷最左邊的三個按鍵是否按下;

    當在P0.1輸出低電平,即左邊第二列為0,這時檢測P0.0、P0.2及P0.3是否為0,可以判斷左邊第二列的三個按鍵是否按下;

    …………;

    這個檢測按鍵是否按下的思路非常簡單,會編寫常規4×4鍵盤驅動程序的網友,肯定都會編寫出來這種電路的驅動程序。

    因為行和列使用了相同的IO引線,實際上,連接在同一個引線的行、列交叉點處的按鍵,就已經失效了,那么就把把原來的按鍵,移動出來,把二極管畫在交叉點,電路如下所示。
      


    再把移出來四個按鍵連接在IO引線,另一端直接接地;把其它按鍵的編號,再整理一下,就成了下圖電路。
      


    這個電路比常規的4×4鍵盤電路僅僅多用了四個二極管,但是卻節省了四條IO接口引線,這個意義是十分巨大的。

    按照這個電路的設計思路,使用 n 條IO接口引線,就可以驅動 n×n 個按鍵。

    那么用5個IO引腳,就可以驅動5×5的鍵盤,這就足以滿足各種應用了。

    網上也有一些其它類型的節省接口的鍵盤電路,但是都有不足,不是電路過于復雜,就是驅動的按鍵個數較少,遠遠不及本電路簡單實用。

    這是個完美的精簡接口的4×4鍵盤電路,不僅可以用在51單片機系統,在使用其它MCU組建的電路中同樣適用。

    針對這個電路,已經用匯編語言和C語言編寫出了驅動程序,因為匯編語言可以使用“位操作”指令,所以程序的比較簡單;C語言的程序,就顯得累贅一些。
    本文地址:http://www.sadisticxxx.com/thread-161725-1-1.html     【打印本頁】

    本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
    guanximjx 發表于 2021-8-11 17:44:37
    簽到,多多學習學習
    jsxzfxcyf 發表于 2023-8-14 10:28:57
    謝謝分享
    您需要登錄后才可以發表評論 登錄 | 立即注冊

    廠商推薦

    • Microchip視頻專區
    • PIC64GX 64位四核MPU
    • 全新32位dsPIC33A DSC的主要特性和功能介紹
    • 新產品!PolarFire® SoC Discovery工具包——探索RISC-V®和FPGA技術的低成本方案
    • 10BASE-T1S以太網的應用開發培訓教程
    • 貿澤電子(Mouser)專區
    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    快速回復 返回頂部 返回列表
    国产在线第一页_日韩一区二区三区不卡_一本大道无码人妻精品专区_久久人人添人人爽添人人88V
  • <td id="iauqw"></td>
  • <li id="iauqw"><tbody id="iauqw"></tbody></li>
  • <td id="iauqw"><wbr id="iauqw"></wbr></td><bdo id="iauqw"></bdo>