0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

獨立按鍵和矩陣鍵盤驅動原理是什么

汽車電子技術 ? 來源:電子開發(fā)圈 ? 作者:北鸮 ? 2023-03-01 14:03 ? 次閱讀

**

No.1**

按鍵分類與輸入原理

按鍵按照結構原理科分為兩類,一類是觸點式開關按鍵,如機械式開關、導電橡膠式開關燈;另一類是無觸點式開關按鍵,如電氣式按鍵,磁感應按鍵等。前者造價低,后者壽命長。目前,微機系統(tǒng)中最常見的是觸點式開關按鍵。

單片機應用系統(tǒng)中,除了復位按鍵有專門的復位電路及專一的復位功能外,其他按鍵都是以開關狀態(tài)來設置控制功能或輸入數據的。當所設置的功能鍵或數字鍵按下時,計算機應用系統(tǒng)應完成該按鍵所設定的功能,鍵信息輸入時與軟件結構密切相關的過程。

對于一組鍵或一個鍵盤,總有一個接口電路與CPU相連。CPU可以采用查詢或中斷方式了解有無將按鍵輸入,并檢查是哪一個按鍵按下,將該鍵號送人累加器,然后通過跳轉指令轉入執(zhí)行該鍵的功能程序,執(zhí)行完成后再返回主程序。

No.2

按鍵結構與特點

微機鍵盤通常使用機械觸點式按鍵開關,其主要功能式把機械上的通斷轉換為電氣上的邏輯關系。也就是說,它能提供標準的TTL邏輯電平,以便于通用數字系統(tǒng)的邏輯電平相容。機械式按鍵再按下或釋放時,由于機械彈性作用的影響,通常伴隨有一定的時間觸點機械抖動,然后其觸點才穩(wěn)定下來。其抖動過程如下圖1所示,抖動時間的長短與開關的機械特性有關,一般為5-10ms。

在觸點抖動期間檢測按鍵的通與斷,可能導致判斷出錯,即按鍵一次按下或釋放錯誤的被認為是多次操作,這種情況是不允許出現的。為了克服你、按鍵觸點機械抖動所致的檢測誤判,必須采取消抖措施。按鍵較少時,可采用硬件消抖;按鍵較多式,采用軟件消抖。

圖片

圖1 按鍵觸點機械抖動

(1)按鍵編碼

一組按鍵或鍵盤都要通過I/O口線查詢按鍵的開關狀態(tài)。根據鍵盤結構的不同,采用不同的編碼。無論有無編碼,以及采用什么編碼,最后都要轉換成為與累加器中數值相對應的鍵值,以實現按鍵功能程序的跳轉。

(2)鍵盤程序

一個完整的鍵盤控制程序應具備以下功能:

a.檢測有無按鍵按下,并采取硬件或軟件措施消抖。

b.有可靠的邏輯處理辦法。每次只處理一個按鍵,期間對任何按鍵的操作對系統(tǒng)不產生影響,且無論一次按鍵時間有多長,系統(tǒng)僅執(zhí)行一次按鍵功能程序。

c.準確輸出按鍵值(或鍵號),以滿足跳轉指令要求。

No.3

獨立按鍵與矩陣鍵盤

(1)獨立按鍵

單片機控制系統(tǒng)中,如果只需要幾個功能鍵,此時,可采用獨立式按鍵結構。

獨立按鍵式直接用I/O口線構成的單個按鍵電路,其特點式每個按鍵單獨占用一根I/O口線,每個按鍵的工作不會影響其他I/O口線的狀態(tài)。獨立按鍵的典型應用如圖所示。獨立式按鍵電路配置靈活,軟件結構簡單,但每個按鍵必須占用一個I/O口線,因此,在按鍵較多時,I/O口線浪費較大,不宜采用。獨立按鍵如圖2所示。

圖片

圖2 獨立鍵盤

獨立按鍵的軟件常采用查詢式結構。先逐位查詢沒跟I/O口線的輸入狀態(tài),如某一根I/O口線輸入為低電平,則可確認該I/O口線所對應的按鍵已按下,然后,再轉向該鍵的功能處理程序。

(2)矩陣鍵盤

單片機系統(tǒng)中,若使用按鍵較多時如電子密碼鎖、電話機鍵盤等一般都至少有12到16個按鍵,通常采用矩陣鍵盤。

矩陣鍵盤又稱行列鍵盤,它是用四條I/O線作為行線,四條I/O線作為列線組成的鍵盤。在行線和列線的每個交叉點上設置一個按鍵。這樣鍵盤上按鍵的個數就為4*4個。這種行列式鍵盤結構能有效地提高單片機系統(tǒng)中I/O口的利用率。

最常見的鍵盤布局如圖3所示。一般由16個按鍵組成,在單片機中正好可以用一個P口實現16個按鍵功能,這也是在單片機系統(tǒng)中最常用的形式,4*4矩陣鍵盤的內部電路如圖4所示。

圖片

圖3 矩陣鍵盤布局圖

圖片

圖4 矩陣鍵盤內部電路圖

當無按鍵閉合時,P3.0P3.3與P3.4P3.7之間開路。當有鍵閉合時,與閉合鍵相連的兩條I/O口線之間短路。判斷有無按鍵按下的方法是:

第一步,置列線P3.4P3.7為輸入狀態(tài),從行線P3.0P3.3輸出低電平,讀入列線數據,若某一列線為低電平,則該列線上有鍵閉合。

第二步,行線輪流輸出低電平,從列線P3.4~P3.7讀入數據,若有某一列為低電平,則對應行線上有鍵按下。綜合一二兩步的結果,可確定按鍵編號。但是鍵閉合一次只能進行一次鍵功能操作,因此須等到按鍵釋放后,再進行鍵功能操作,否則按一次鍵,有可能會連續(xù)多次進行同樣的鍵操作。

識別按鍵的方法很多其中,最常見的方法是掃描法。

按鍵按下時,與此鍵相連的行線與列線導通,行線在無按鍵按下時處在高電平。如果所有的列線都處在高電平,則按鍵按下與否不會引起行線電平的變化,因此必須使所有列線處在電平。這樣,當有按鍵按下時,改鍵所在的行電平才回由高變低。才能判斷相應的行有鍵按下。

獨立按鍵數量少,可根據實際需要靈活編碼。矩陣鍵盤,按鍵的位置由行號和列號唯一確定,因此可以分別對行號和列號進行二進制編碼,然后兩值合成一個字節(jié),高4位是行號,低4位是列號。

對鍵盤的響應取決于鍵盤的工作方式,鍵盤的工作方式應根據實際應用系統(tǒng)中的CPU的工作狀況而定,其選取的原則是既要保證CPU能及時響應按鍵操作,又不要過多占用CPU的工作時間。通常鍵盤的工作方式有三種,編程掃描、定時掃描和中斷掃描。

1)編程掃描方式

編程掃描方式是利用CPU完成其它工作的空余時間,調用鍵盤掃描子程序來響應鍵盤輸入的要求。在執(zhí)行鍵功能程序時,CPU不再響應鍵輸入要求,直到CPU重新掃描鍵盤為止。

2)定時掃描方式

定時掃描方式就是每隔一段時間對鍵盤掃描一次,它利用單片機內部的定時器產生一定時間(例如10ms)的定時,當定時時間到就產生定時器溢出中斷。CPU響應中斷后對鍵盤進行掃描,并在有按鍵按下時識別出該鍵,再執(zhí)行該鍵的功能程序。

3)中斷掃描方式

上述兩種鍵盤掃描方式,無論是否按鍵,CPU都要定時掃描鍵盤,而單片機應用系統(tǒng)工作時,并非經常需要鍵盤輸入,因此,CPU經常處于空掃描狀態(tài)。

為提高CPU工作效率,可采用中斷掃描工作方式。其工作過程如下:當無按鍵按下時,CPU處理自己的工作,當有按鍵按下時,產生中斷請求,CPU轉去執(zhí)行鍵盤掃描子程序,并識別鍵號。

** ** ** —** —** —— END —— —******

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 開關
    +關注

    關注

    19

    文章

    3137

    瀏覽量

    93645
  • 結構原理
    +關注

    關注

    0

    文章

    5

    瀏覽量

    7448
  • 按鍵
    +關注

    關注

    4

    文章

    223

    瀏覽量

    57602
收藏 人收藏

    評論

    相關推薦

    單片機獨立按鍵矩陣鍵盤概念及原理

    的邏輯處理辦法。每次只處理一個按鍵,期間對任何按鍵的操作對系統(tǒng)不產生影響,且無論一次按鍵時間有多長,系統(tǒng)僅執(zhí)行一次按鍵功能程序。c.準確輸出按鍵
    發(fā)表于 11-30 16:32

    51單片機鍵盤接口-獨立按鍵矩陣按鍵 精選資料分享

    51單片機鍵盤接口-獨立按鍵矩陣按鍵按鍵的分類鍵輸入原理
    發(fā)表于 07-16 07:57

    獨立鍵盤檢測與矩陣鍵盤檢測

    獨立鍵盤檢測與矩陣鍵盤檢測一、獨立鍵盤檢測1、工作原理2、舉例2.1 位定義2.2 數碼管顯示3
    發(fā)表于 07-20 06:20

    矩陣鍵盤按鍵電路原理是什么

    藍橋杯單片機 賽后資料整理(二)——矩陣鍵盤按鍵電路原理代碼模板獨立按鍵矩陣
    發(fā)表于 12-10 08:25

    矩陣鍵盤的使用方法

    首先呢,大家都知道:歷年的藍橋杯單片機組都會考到按鍵模塊;對于國賽來說,考矩陣鍵盤的概率遠遠高于獨立按鍵,所以必須將
    發(fā)表于 01-12 06:12

    矩陣鍵盤獨立鍵盤的原理介紹

    學到矩陣鍵盤這一塊對網上別人寫的C代碼有些疑問,希望有能看到的大牛幫助解答。矩陣鍵盤獨立鍵盤
    發(fā)表于 01-13 08:10

    單片機獨立按鍵矩陣鍵盤的原理是什么?

    單片機獨立按鍵矩陣鍵盤的原理是什么?鍵盤的工作方式是什么?
    發(fā)表于 01-18 07:31

    矩陣鍵盤檢測獨立按鍵與單片機連接

    4.2 矩陣鍵盤檢測獨立按鍵與單片機連接時,每個按鍵都需要單片機的一個I/O口,若單片機系統(tǒng)需要較多按鍵
    發(fā)表于 02-22 06:14

    矩陣鍵盤實現按鍵顯示

    矩陣鍵盤實現按鍵顯示源程序。
    發(fā)表于 12-23 14:20 ?30次下載

    第四棵--KEY獨立鍵盤矩陣鍵盤的檢測

    獨立鍵盤矩陣鍵盤的檢測,十分詳細。適合新手。
    發(fā)表于 09-01 11:44 ?0次下載

    使用單片機C語言實現獨立按鍵檢測與矩陣鍵盤操作的資料和程序

    實現獨立按鍵的檢測和矩陣鍵盤操作。完成本文所需硬件:基于C51系列單片機的開發(fā)板(本文是基于STC12C5A60S2處理器的一款開發(fā)板),帶中文版windows操作系統(tǒng)的電腦。
    發(fā)表于 07-16 17:39 ?2次下載
    使用單片機C語言實現<b class='flag-5'>獨立</b><b class='flag-5'>按鍵</b>檢測與<b class='flag-5'>矩陣</b><b class='flag-5'>鍵盤</b>操作的資料和程序

    矩陣鍵盤按鍵識別方法_矩陣鍵盤掃描程序

    矩陣鍵盤按鍵識別方法來自簡單日記網精選推薦。在學習有關矩陣鍵盤的時候,往往要學會矩陣
    的頭像 發(fā)表于 04-20 09:39 ?3.4w次閱讀

    51單片機按鍵檢測--獨立按鍵矩陣鍵盤

    按鍵,每個按鍵對應一個IO口,通過循環(huán)或者中斷去檢測,這種方法常用于按鍵個數較少得時候。如果按鍵的個數較多,每個按鍵都分配一個IO口,會占用
    發(fā)表于 11-12 11:06 ?15次下載
    51單片機<b class='flag-5'>按鍵</b>檢測--<b class='flag-5'>獨立</b><b class='flag-5'>按鍵</b>與<b class='flag-5'>矩陣</b><b class='flag-5'>鍵盤</b>

    51單片機鍵盤接口-獨立按鍵矩陣按鍵

    51單片機鍵盤接口-獨立按鍵矩陣按鍵按鍵的分類鍵輸入原理
    發(fā)表于 11-12 12:36 ?13次下載
    51單片機<b class='flag-5'>鍵盤</b>接口-<b class='flag-5'>獨立</b><b class='flag-5'>按鍵</b>和<b class='flag-5'>矩陣</b><b class='flag-5'>按鍵</b>

    單片機AT89C51--7.按鍵(獨立按鍵,矩陣按鍵)

    單片機AT89C51--7.按鍵1.鍵盤類型1.1 編碼鍵盤1.2 非編碼鍵盤2.獨立鍵盤
    發(fā)表于 11-25 14:51 ?14次下載
    單片機AT89C51--7.<b class='flag-5'>按鍵</b>(<b class='flag-5'>獨立</b><b class='flag-5'>按鍵</b>,<b class='flag-5'>矩陣</b><b class='flag-5'>按鍵</b>)