• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      鍵盤抖動的檢測及消除方法

      2016-08-12 02:15:34李秋霞
      中國新通信 2016年13期
      關鍵詞:消除檢測

      李秋霞

      【摘要】 通常的按鍵所用開關為機械彈性開關,由于機械觸點的彈性作用,一個按鍵開關在閉合時不會馬上穩(wěn)定地接通,斷開時也不會一下子斷開,因而在閉合及斷開的瞬間均伴隨有一連串的抖動,引起一次按鍵被誤讀多次。為確保CPU對按鍵的一次閉合僅作一次處理,必須消除按鍵抖動。本文對鍵盤抖動的檢測及消除方法進行了探討。

      【關鍵詞】 鍵盤抖動 檢測 消除

      鍵盤是計算機和工業(yè)控制等領域不可缺少的輸入設備,通過它可以實現(xiàn)人機對話, 完成各種功能操作。通常的按鍵所用開關為機械彈性開關,由于機械觸點的彈性作用, 一個按鍵開關在閉合時不會馬上穩(wěn)定地接通,斷開時也不會一下子斷開,因而在閉合及斷開的瞬間均伴隨有一連串的抖動,會引起一次按鍵被誤讀多次。為了確保CPU對按鍵的一次閉合僅作一次處理,必須消除按鍵抖動。

      一、鍵盤抖動的檢測

      按鍵的檢測與消抖是處理非編碼鍵盤必須考慮的一部分。在FPGA中鍵盤的檢測主要通過“脈沖邊緣檢測法”進行。按鍵與單片機的連接方式為按鍵的一端與地相連,另一端直接與單片機的I/O口相連。此時我們在程序中先給I/O口賦值高電平,然后不斷的檢測I/O口電平的變化。當按鍵沒有被按下時,此I/O口的電平一直為高;當按鍵被按下時,由于按鍵的另一端直接與地相連,相當于低電平,此時我們從I/O口讀出的即為高電平,程序一旦檢測到I/O口由高電平變?yōu)榈碗娖綍r,說明按鍵被按下,此時馬上執(zhí)行相應的動作,這就是按鍵檢測的原理。

      具體檢測方法如下:不停的讀取端口,假設讀取的序列為:按下表示為0,沒有按下就是1。將數(shù)據(jù)存入另一個寄存器。根據(jù)數(shù)電知識,存入數(shù)據(jù)會存在一個時鐘的移動。這樣按鍵的檢測到的時間是一按下就會檢測到,而不是松開時。同時不會出現(xiàn)松開過程的干擾。這樣就會看見這樣在按鍵以后存在一個脈沖,也就是1,那個1可以表示有按鍵被按下,而且是在按下的瞬間就能檢測到。這樣延時20ms左右再次用同樣的方法檢測確定那個鍵被按下。這樣也就實現(xiàn)了鍵盤的消抖和檢測,不會每次都檢測,只有有檢測到有按鍵按下的脈沖才會判斷哪個鍵被按下。新存入寄存器的數(shù)據(jù)是原寄存器上個時鐘的數(shù)值,即寄存器的基本原理。取反電路時組合電路,不會出現(xiàn)時延,取反的值與原寄存器值對齊。

      二、鍵盤抖動的消除

      (1)硬件消抖。在鍵數(shù)較少時,可用硬件方法消除鍵抖動。RS觸發(fā)器為常用的硬件去抖,兩個“與非”門構(gòu)成一個RS觸發(fā)器。當按鍵未按下時,輸出為1;當鍵按下時,輸出為 0。此時即使用按鍵的機械性能,使按鍵因彈性抖動而產(chǎn)生瞬時斷開(抖動跳開B),中要按鍵不返回原始狀態(tài)A,雙穩(wěn)態(tài)電路的狀態(tài)不改變,輸出保持為 0,不會產(chǎn)生抖動的波形。也就是說,即使 B點的電壓波形是抖動的,但經(jīng)雙穩(wěn)態(tài)電路之后,其輸出為正規(guī)的矩形波。這一點通過分析RS 觸發(fā)器的工作過程很容易得到驗證。此外,利用電容的放電延時,采用并聯(lián)電容法,也可以實現(xiàn)硬件消抖。

      (2)軟件消抖。如果按鍵較多,常用軟件方法去抖。軟件消抖主要是采用延時多次讀取鍵盤接口數(shù)據(jù),通過比較前后兩次讀取鍵盤端口的數(shù)據(jù)通過RC振蕩電路實現(xiàn)鍵盤消抖,適合對消除抖動要求不高的場合。軟件消抖的實質(zhì)在于降低鍵盤輸入端口的采樣頻率,將高頻抖動略去。實際應用中通常采用延時跳過高頻抖動區(qū)間,然后再檢測輸入做出相應處理。即檢測出鍵閉合后執(zhí)行一個延時程序,產(chǎn)生5ms~10ms 的延時,讓前沿抖動消失后再一次檢測鍵的狀態(tài),如果仍保持閉合 狀態(tài)電平,則確認為真正有鍵按下。當檢測到按鍵釋放后,也要給5ms~10ms 的延時,待后沿抖動消失后才能轉(zhuǎn)入該鍵的處理程序。一般來說,軟件消抖的方法是不斷檢測按鍵值,直到按鍵值穩(wěn)定。實現(xiàn)方法:假設未按鍵時輸入1,按鍵后輸入為0,抖動時不定。可以做以下檢測:檢測到按鍵輸入為0之后,延時5ms~10ms,再次檢測,如果按鍵還為0,那么就認為有按鍵輸入。延時的5ms~10ms恰好避開了抖動期。為節(jié)省硬件,通常在單片機系統(tǒng)中,一般不采用硬件方法消除鍵的抖動,而是用軟件消抖方法。 軟件消抖要占用系統(tǒng)資源,在系統(tǒng)資源充足的情況下使用軟件消抖更加簡單。軟件延時消抖并不需要增加新的硬件,但采用這種方式來設計, 一般通過軟件指令或者定時器的方式來設定延時的時間, 采用通用處理器,由于運行速度不一致,需要將軟件做相應的 修改,比較麻煩。

      此外,在鍵盤消抖實驗中用到的方法,是建立2個寄存器,形成二級寄存器,在時鐘觸發(fā)中,首先把數(shù)據(jù)送入第一個寄存器中,然后在下一個時鐘上沿到來時,將第一個寄存器中的數(shù)據(jù)存入第二個寄存器,也就是說第二個寄存器中的數(shù)據(jù)始終比第一個寄存器晚一個周期,即晚一個數(shù)據(jù),然后再將第一個寄存器中的數(shù)據(jù)取反與第二個寄存器的數(shù)據(jù)相與,產(chǎn)生的數(shù)存入一個新的寄存器里,這樣產(chǎn)生的結(jié)果是當?shù)谝粋€寄存器中的數(shù)據(jù)由1變?yōu)?時,就會在新的寄存器里產(chǎn)生一個高電平,并維持一個周期。

      參 考 文 獻

      [1]李運兵;微控制器中按鍵處理技巧及應用[J];計算機系統(tǒng)應用;2010年02期

      [2]劉天時;劉賞;付春;一種單片機鍵盤電路設計與消抖處理[J];計算機與網(wǎng)絡;2010年10期

      [3]趙鵬飛;俞建定;基于嵌入式微控制器的一種新型GPIO擴展鍵盤技術[J];寧波大學學報(理工版);2013年02期

      猜你喜歡
      消除檢測
      “不等式”檢測題
      “一元一次不等式”檢測題
      “一元一次不等式組”檢測題
      “幾何圖形”檢測題
      “角”檢測題
      體育鍛煉緩解消除老年抑郁癥的研究
      口語是英語學習中的關鍵
      考試周刊(2016年60期)2016-08-23 07:01:29
      電力系統(tǒng)諧波在用電營銷中的運用舉措
      例析中學生“逆反”心理的減輕與消除
      考試周刊(2016年29期)2016-05-28 17:45:12
      廣播發(fā)射機射頻系統(tǒng)中的信號沖突分析及消除研究
      远安县| 张北县| 华蓥市| 拉孜县| 南城县| 新绛县| 前郭尔| 河津市| 闽清县| 木里| 宝丰县| 揭阳市| 丹寨县| 五大连池市| 新竹市| 铜鼓县| 大邑县| 丰原市| 凌海市| 安远县| 荔波县| 宜昌市| 丰城市| 阳高县| 界首市| 封丘县| 高淳县| 霍山县| 禹州市| 昌乐县| 阳西县| 苏尼特左旗| 印江| 互助| 天气| 莫力| 炉霍县| 略阳县| 麟游县| 喜德县| 潮州市|