單片機中的獨立按鍵與矩陣鍵盤
發布時間:2020-05-18 責任編輯:lina
【導讀】按鍵按照結構原理科分為兩類,一類是觸點式開關按鍵,如機械式開關、導電橡膠式開關燈;另ling一yi類lei是shi無wu觸chu點dian式shi開kai關guan按an鍵jian,如ru電dian氣qi式shi按an鍵jian,磁ci感gan應ying按an鍵jian等deng。前qian者zhe造zao價jia低di,後hou者zhe壽shou命ming長chang。目mu前qian,微wei機ji係xi統tong中zhong最zui常chang見jian的de是shi觸chu點dian式shi開kai關guan按an鍵jian。
1.按鍵分類與輸入原理
按鍵按照結構原理科分為兩類,一類是觸點式開關按鍵,如機械式開關、導電橡膠式開關燈;另ling一yi類lei是shi無wu觸chu點dian式shi開kai關guan按an鍵jian,如ru電dian氣qi式shi按an鍵jian,磁ci感gan應ying按an鍵jian等deng。前qian者zhe造zao價jia低di,後hou者zhe壽shou命ming長chang。目mu前qian,微wei機ji係xi統tong中zhong最zui常chang見jian的de是shi觸chu點dian式shi開kai關guan按an鍵jian。
在zai單dan片pian機ji應ying用yong係xi統tong中zhong,除chu了le複fu位wei按an鍵jian有you專zhuan門men的de複fu位wei電dian路lu及ji專zhuan一yi的de複fu位wei功gong能neng外wai,其qi他ta按an鍵jian都dou是shi以yi開kai關guan狀zhuang態tai來lai設she置zhi控kong製zhi功gong能neng或huo輸shu入ru數shu據ju的de。當dang所suo設she置zhi的de功gong能neng鍵jian或huo數shu字zi鍵jian按an下xia時shi,計ji算suan機ji應ying用yong係xi統tong應ying完wan成cheng該gai按an鍵jian所suo設she定ding的de功gong能neng,鍵jian信xin息xi輸shu入ru時shi與yu軟ruan件jian結jie構gou密mi切qie相xiang關guan的de過guo程cheng。
對於一組鍵或一個鍵盤,總有一個接口電路與CPU相連。CPUkeyicaiyongzhaxunhuozhongduanfangshilejieyouwujianganjianshuru,bingjianzhashinayigeanjiananxia,jianggaijianhaosongrenleijiaqi,ranhoutongguotiaozhuanzhilingzhuanruzhixinggaijiandegongnengchengxu,zhixingwanchenghouzaifanhuizhuchengxu。
2.按鍵結構與特點
微機鍵盤通常使用機械觸點式按鍵開關,其主要功能式把機械上的通斷轉換為電氣上的邏輯關係。也就是說,它能提供標準的TTLluojidianping,yibianyutongyongshuzixitongdeluojidianpingxiangrong。jixieshianjianzaianxiahuoshifangshi,youyujixiedanxingzuoyongdeyingxiang,tongchangbansuiyouyidingdeshijianchudianjixiedoudong,ranhouqichudiancaiwendingxialai。qidoudongguochengruxiatu1所示,抖動時間的長短與開關的機械特性有關,一般為5-10ms。在zai觸chu點dian抖dou動dong期qi間jian檢jian測ce按an鍵jian的de通tong與yu斷duan,可ke能neng導dao致zhi判pan斷duan出chu錯cuo,即ji按an鍵jian一yi次ci按an下xia或huo釋shi放fang錯cuo誤wu的de被bei認ren為wei是shi多duo次ci操cao作zuo,這zhe種zhong情qing況kuang是shi不bu允yun許xu出chu現xian的de。為wei了le克ke服fu你ni、按鍵觸點機械抖動所致的檢測誤判,必須采取消抖措施。按鍵較少時,可采用硬件消抖;按鍵較多式,采用軟件消抖。
圖1 按鍵觸點機械抖動
(1)按鍵編碼
一組按鍵或鍵盤都要通過I/Okouxianzhaxunanjiandekaiguanzhuangtai。genjujianpanjiegoudebutong,caiyongbutongdebianma。wulunyouwubianma,yijicaiyongshenmebianma,zuihoudouyaozhuanhuanchengweiyuleijiaqizhongshuzhixiangduiyingdejianzhi,yishixiananjiangongnengchengxudetiaozhuan。
(2)鍵盤程序
一個完整的鍵盤控製程序應具備以下功能:
a.檢測有無按鍵按下,並采取硬件或軟件措施消抖。
b.有(you)可(ke)靠(kao)的(de)邏(luo)輯(ji)處(chu)理(li)辦(ban)法(fa)。每(mei)次(ci)隻(zhi)處(chu)理(li)一(yi)個(ge)按(an)鍵(jian),期(qi)間(jian)對(dui)任(ren)何(he)按(an)鍵(jian)的(de)操(cao)作(zuo)對(dui)係(xi)統(tong)不(bu)產(chan)生(sheng)影(ying)響(xiang),且(qie)無(wu)論(lun)一(yi)次(ci)按(an)鍵(jian)時(shi)間(jian)有(you)多(duo)長(chang),係(xi)統(tong)僅(jin)執(zhi)行(xing)一(yi)次(ci)按(an)鍵(jian)功(gong)能(neng)程(cheng)序(xu)。
c.準確輸出按鍵值(或鍵號),以滿足跳轉指令要求。
3.獨立按鍵與矩陣鍵盤
(1)獨立按鍵
單片機控製係統中,如果隻需要幾個功能鍵,此時,可采用獨立式按鍵結構。
獨立按鍵式直接用I/O口線構成的單個按鍵電路,其特點式每個按鍵單獨占用一根I/O口線,每個按鍵的工作不會影響其他I/O口線的狀態。獨立按鍵的典型應用如圖所示。獨立式按鍵電路配置靈活,軟件結構簡單,但每個按鍵必須占用一個I/O口線,因此,在按鍵較多時,I/O口線浪費較大,不宜采用。獨立按鍵如圖2所示。

圖2 獨立鍵盤
獨立按鍵的軟件常采用查詢式結構。先逐位查詢沒跟I/O口線的輸入狀態,如某一根I/O口線輸入為低電平,則可確認該I/O口線所對應的按鍵已按下,然後,再轉向該鍵的功能處理程序。
(2)矩陣鍵盤
單片機係統中,若使用按鍵較多時如電子密碼鎖、電話機鍵盤等一般都至少有12到16個按鍵,通常采用矩陣鍵盤。
矩陣鍵盤又稱行列鍵盤,它是用四條I/O線作為行線,四條I/O線作為列線組成的鍵盤。在行線和列線的每個交叉點上設置一個按鍵。這樣鍵盤上按鍵的個數就為4*4個。這種行列式鍵盤結構能有效地提高單片機係統中I/O口的利用率。
矩陣鍵盤的工作原理
最常見的鍵盤布局如圖3所示。一般由16個按鍵組成,在單片機中正好可以用一個P口實現16個按鍵功能,這也是在單片機係統中最常用的形式,4*4矩陣鍵盤的內部電路如圖4所示。

圖3 矩陣鍵盤布局圖

圖4 矩陣鍵盤內部電路圖
當無按鍵閉合時,P3.0~P3.3與P3.4~P3.7之間開路。當有鍵閉合時,與閉合鍵相連的兩條I/O口線之間短路。判斷有無按鍵按下的方法是:第一步,置列線P3.4~P3.7為輸入狀態,從行線P3.0~P3.3輸出低電平,讀入列線數據,若某一列線為低電平,則該列線上有鍵閉合。第二步,行線輪流輸出低電平,從列線P3.4~P3.7讀(du)入(ru)數(shu)據(ju),若(ruo)有(you)某(mou)一(yi)列(lie)為(wei)低(di)電(dian)平(ping),則(ze)對(dui)應(ying)行(xing)線(xian)上(shang)有(you)鍵(jian)按(an)下(xia)。綜(zong)合(he)一(yi)二(er)兩(liang)步(bu)的(de)結(jie)果(guo),可(ke)確(que)定(ding)按(an)鍵(jian)編(bian)號(hao)。但(dan)是(shi)鍵(jian)閉(bi)合(he)一(yi)次(ci)隻(zhi)能(neng)進(jin)行(xing)一(yi)次(ci)鍵(jian)功(gong)能(neng)操(cao)作(zuo),因(yin)此(ci)須(xu)等(deng)到(dao)按(an)鍵(jian)釋(shi)放(fang)後(hou),再(zai)進(jin)行(xing)鍵(jian)功(gong)能(neng)操(cao)作(zuo),否(fou)則(ze)按(an)一(yi)次(ci)鍵(jian),有(you)可(ke)能(neng)會(hui)連(lian)續(xu)多(duo)次(ci)進(jin)行(xing)同(tong)樣(yang)的(de)鍵(jian)操(cao)作(zuo)。
識別按鍵的方法很多其中,最常見的方法是掃描法
按(an)鍵(jian)按(an)下(xia)時(shi),與(yu)此(ci)鍵(jian)相(xiang)連(lian)的(de)行(xing)線(xian)與(yu)列(lie)線(xian)導(dao)通(tong),行(xing)線(xian)在(zai)無(wu)按(an)鍵(jian)按(an)下(xia)時(shi)處(chu)在(zai)高(gao)電(dian)平(ping)。如(ru)果(guo)所(suo)有(you)的(de)列(lie)線(xian)都(dou)處(chu)在(zai)高(gao)電(dian)平(ping),則(ze)按(an)鍵(jian)按(an)下(xia)與(yu)否(fou)不(bu)會(hui)引(yin)起(qi)行(xing)線(xian)電(dian)平(ping)的(de)變(bian)化(hua),因(yin)此(ci)必(bi)須(xu)使(shi)所(suo)有(you)列(lie)線(xian)處(chu)在(zai)電(dian)平(ping)。這(zhe)樣(yang),當(dang)有(you)按(an)鍵(jian)按(an)下(xia)時(shi),改(gai)鍵(jian)所(suo)在(zai)的(de)行(xing)電(dian)平(ping)才(cai)回(hui)由(you)高(gao)變(bian)低(di)。才(cai)能(neng)判(pan)斷(duan)相(xiang)應(ying)的(de)行(xing)有(you)鍵(jian)按(an)下(xia)。
獨(du)立(li)按(an)鍵(jian)數(shu)量(liang)少(shao),可(ke)根(gen)據(ju)實(shi)際(ji)需(xu)要(yao)靈(ling)活(huo)編(bian)碼(ma)。矩(ju)陣(zhen)鍵(jian)盤(pan),按(an)鍵(jian)的(de)位(wei)置(zhi)由(you)行(xing)號(hao)和(he)列(lie)號(hao)唯(wei)一(yi)確(que)定(ding),因(yin)此(ci)可(ke)以(yi)分(fen)別(bie)對(dui)行(xing)號(hao)和(he)列(lie)號(hao)進(jin)行(xing)二(er)進(jin)製(zhi)編(bian)碼(ma),然(ran)後(hou)兩(liang)值(zhi)合(he)成(cheng)一(yi)個(ge)字(zi)節(jie),高(gao)4位是行號,低4位是列號。
4.鍵盤的工作方式
對鍵盤的響應取決於鍵盤的工作方式,鍵盤的工作方式應根據實際應用係統中的CPU的工作狀況而定,其選取的原則是既要保證CPU能及時響應按鍵操作,又不要過多占用CPU的工作時間。通常鍵盤的工作方式有三種,編程掃描、定時掃描和中斷掃描。
(1)編程掃描方式
編程掃描方式是利用CPU完成其它工作的空餘時間,調用鍵盤掃描子程序來響應鍵盤輸入的要求。在執行鍵功能程序時,CPU不再響應鍵輸入要求,直到CPU重新掃描鍵盤為止。
(2)定時掃描方式
定時掃描方式就是每隔一段時間對鍵盤掃描一次,它利用單片機內部的定時器產生一定時間(例如10ms)的定時,當定時時間到就產生定時器溢出中斷。CPU響應中斷後對鍵盤進行掃描,並在有按鍵按下時識別出該鍵,再執行該鍵的功能程序。
(3)中斷掃描方式
上述兩種鍵盤掃描方式,無論是否按鍵,CPU都要定時掃描鍵盤,而單片機應用係統工作時,並非經常需要鍵盤輸入,因此,CPU經常處於空掃描狀態。
為提高CPU工作效率,可采用中斷掃描工作方式。其工作過程如下:當無按鍵按下時,CPU處理自己的工作,當有按鍵按下時,產生中斷請求,CPU轉去執行鍵盤掃描子程序,並識別鍵號。
免責聲明:本文為轉載文章,轉載此文目的在於傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯係小編進行處理。
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- XZ1824:寬電壓輸入下的高效降壓型DC-DC控製器
- 上海通用重工AR係列:350A空冷機器人焊接套裝,解鎖高精度自動化焊接新效能
- 豆包和Gemini誰更“聰明”?2026年最新實測對比,看完不再糾結
- 2026藍牙亞洲大會暨展覽在深啟幕
- 新市場與新場景推動嵌入式係統研發走向統一開發平台
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
Tektronix
Thunderbolt
TI
TOREX
TTI
TVS
UPS電源
USB3.0
USB 3.0主控芯片
USB傳輸速度
usb存儲器
USB連接器
VGA連接器
Vishay
WCDMA功放
WCDMA基帶
Wi-Fi
Wi-Fi芯片
window8
WPG
XILINX
Zigbee
ZigBee Pro
安規電容
按鈕開關
白色家電
保護器件
保險絲管
北鬥定位
北高智

