單片機按鍵軟硬件設計技巧懈费!

姓名:謝瑞

學號:19011210366

轉(zhuǎn)載自:https://mp.weixin.qq.com/s/D0suoOyZTU_WoK2GKm-JxQ

【嵌牛導讀】:在單片機系統(tǒng)里衩藤,按鍵是常見的輸入設備索赏,在本文將介紹幾種按鍵硬件堪遂、軟件設計方面的技巧。

【嵌牛鼻子】:單片機? ? ? ? ? 按鍵設計

【嵌牛提問】:按鍵設計技巧本缠,去抖

【嵌牛正文】:一般的在按鍵的設計上,一般有四種方案入问。

? ? ? ?一是GPIO口直接檢測單個按鍵丹锹,如圖1.1所示;二是按鍵較多則使用矩陣鍵盤稀颁,如圖1.2所示;三是將按鍵接到外部中斷引腳上,利用按鍵按下產(chǎn)生的邊沿信號進行按鍵檢測楣黍,如圖1.3所示;四是利用單片機的ADC匾灶,在不同的按鍵按下后,能夠使得ADC接口上的電壓不同锡凝,根據(jù)電壓的不同粘昨,則可以識別按鍵,如圖1.4所示窜锯。


圖1.1
圖1.2
圖1.3
圖1.4

在以上四種設計上张肾,各有優(yōu)點和不足。

第一種锚扎,是最簡單和最基礎的吞瞪,對于單片機初學者很容易理解和使用,但是缺點是驾孔,需要在主循環(huán)中不斷檢測按鍵是否按下芍秆,并且需要做消抖處理。若主循環(huán)中某個函數(shù)任務占用時間較長翠勉,則按鍵會有不同程度的“失靈”妖啥。

第二種,優(yōu)點是能夠在有限的GPIO情況下对碌,擴展盡可能多的按鍵荆虱。但缺點同上,需要不停檢測按鍵是否按下朽们。

第三種怀读,是效率最高,不需要循環(huán)檢測按鍵是否按下骑脱,但是缺點是菜枷,需要單片機有足夠的外部中斷接口以供使用。

第四種叁丧,優(yōu)點是啤誊,只需要單片機的一個ADC接口,一根線拥娄,就能對多個按鍵進行識別坷衍,缺點是按鍵一旦內(nèi)部接觸不良,則可能按鍵串位条舔,且按鍵產(chǎn)生的抖動枫耳,會造成一定的識別錯誤。

在以上的三種常見按鍵設計的基礎上孟抗,現(xiàn)在分享我學習和工作中總結(jié)的按鍵方案迁杨。

改進一:在原方案一的基礎上钻心,加上與門電路,使得任何一個按鍵按下铅协,都能產(chǎn)生中斷捷沸,然后在中斷里面識別是哪個按鍵被按下。因此不需要循環(huán)掃描狐史,大大提高了效率痒给。方案如圖1.5所示。只需要每個按鍵對應地增加一個二極管骏全,利用二極管的線與特性苍柏,可以實現(xiàn)按下任何按鍵,都能產(chǎn)生中斷信號姜贡,但是按鍵之間互不影響试吁。二極管選用普通整流二極管即可,本人親測可行楼咳。


圖1.5

改進二:在原有的ADC按鍵的基礎上熄捍,也可用增加二極管的方式,實現(xiàn)按鍵中斷母怜,并在中斷服務程序里進行AD轉(zhuǎn)換余耽,從而識別按鍵。電路如圖1.6所示苹熏。


圖1.6

改進三:因為按鍵不可避免的有抖動碟贾,因此按鍵消抖可以通過硬件消痘和軟件消抖。現(xiàn)在分享一個十分簡單且有效的硬件消痘方法:給按鍵并聯(lián)一個104左右的電容柜裸。軟件上基本不用處理即可避免抖動。

改進四:在按鍵掃描檢測的方案下粱锐,如果主循環(huán)中有某個函數(shù)占用時間較長疙挺,則按鍵會發(fā)生或長或短的“失靈”,現(xiàn)分享我的一個解決方案怜浅。將按鍵掃描放到定時器中斷里面铐然,這樣就可周期性地檢測按鍵按下情況,不受主循環(huán)的影響恶座。

并且搀暑,能解析出按鍵的不同狀態(tài),即按下跨琳、按住自点、彈起、為按下這四種狀態(tài)脉让,用以實現(xiàn)更豐富的功能桂敛。

但需注意兩點:一是定時器的定時時間功炮,不可過長也不可過短,過長容易檢測不到按下术唬,過短會占用大量時間資源薪伏。二是中斷服務程序需簡單明了,只做檢測用粗仓,通過全局變量傳遞嫁怀,在主循環(huán)內(nèi)完成按鍵響應,中斷服務函數(shù)內(nèi)盡量不要占用太多時間借浊。

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末塘淑,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子巴碗,更是在濱河造成了極大的恐慌朴爬,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,651評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件橡淆,死亡現(xiàn)場離奇詭異召噩,居然都是意外死亡,警方通過查閱死者的電腦和手機逸爵,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,468評論 3 392
  • 文/潘曉璐 我一進店門具滴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人师倔,你說我怎么就攤上這事构韵。” “怎么了趋艘?”我有些...
    開封第一講書人閱讀 162,931評論 0 353
  • 文/不壞的土叔 我叫張陵疲恢,是天一觀的道長。 經(jīng)常有香客問我瓷胧,道長显拳,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,218評論 1 292
  • 正文 為了忘掉前任搓萧,我火速辦了婚禮杂数,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘瘸洛。我一直安慰自己揍移,他們只是感情好,可當我...
    茶點故事閱讀 67,234評論 6 388
  • 文/花漫 我一把揭開白布反肋。 她就那樣靜靜地躺著那伐,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上喧锦,一...
    開封第一講書人閱讀 51,198評論 1 299
  • 那天读规,我揣著相機與錄音,去河邊找鬼燃少。 笑死束亏,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的阵具。 我是一名探鬼主播碍遍,決...
    沈念sama閱讀 40,084評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼阳液!你這毒婦竟也來了怕敬?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,926評論 0 274
  • 序言:老撾萬榮一對情侶失蹤帘皿,失蹤者是張志新(化名)和其女友劉穎东跪,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鹰溜,經(jīng)...
    沈念sama閱讀 45,341評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡虽填,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,563評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了曹动。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片斋日。...
    茶點故事閱讀 39,731評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖墓陈,靈堂內(nèi)的尸體忽然破棺而出恶守,到底是詐尸還是另有隱情,我是刑警寧澤贡必,帶...
    沈念sama閱讀 35,430評論 5 343
  • 正文 年R本政府宣布兔港,位于F島的核電站,受9級特大地震影響仔拟,放射性物質(zhì)發(fā)生泄漏衫樊。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,036評論 3 326
  • 文/蒙蒙 一理逊、第九天 我趴在偏房一處隱蔽的房頂上張望橡伞。 院中可真熱鬧盒揉,春花似錦晋被、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,676評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春欲侮,著一層夾襖步出監(jiān)牢的瞬間崭闲,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,829評論 1 269
  • 我被黑心中介騙來泰國打工威蕉, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留刁俭,地道東北人。 一個月前我還...
    沈念sama閱讀 47,743評論 2 368
  • 正文 我出身青樓韧涨,卻偏偏與公主長得像牍戚,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子虑粥,可洞房花燭夜當晚...
    茶點故事閱讀 44,629評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 一娩贷、基本知識 1. 按鍵分類與輸入原理 按鍵按照結(jié)構原理科分為兩類第晰,一類是觸點式開關按鍵,如機械式開關彬祖、導電橡膠式...
    Murrey_Xiao閱讀 14,100評論 1 8
  • 一茁瘦、原理簡介 鍵盤接口電路是單片機系統(tǒng)設計非常重要的一環(huán),作為人機交互界面里最常用的輸入設備涧至。我們可以通過鍵盤輸入...
    創(chuàng)客烏托邦閱讀 4,638評論 0 1
  • 版權聲明:本文為小斑馬學習總結(jié)文章腹躁,技術來源于韋東山著作,轉(zhuǎn)載請注明出處南蓬! 一纺非、ADC硬件原理 模數(shù)轉(zhuǎn)換器即A/D...
    ZebraWei閱讀 3,404評論 1 2
  • 申金鑫 17101223365 轉(zhuǎn)載自單片機精講吳鑒鷹微信公眾號 【嵌牛導讀】:一些單片機設計中應注意的問題,和單...
    Felixxin閱讀 528評論 0 5
  • 真正做到靜心就會克服頭腦的慣性思維赘方,掌握好情緒烧颖。
    玄秀閱讀 177評論 0 0