<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          電容觸摸傳感的理論框架

          ——
          作者:Thomas Perme 微芯科技公司 應(yīng)用工程師 時(shí)間:2009-07-20 來(lái)源:電子產(chǎn)品世界 收藏

          簡(jiǎn)單解碼:按鍵是否被按下?

          本文引用地址:http://www.ex-cimer.com/article/96399.htm

          為了確定按鍵是否被按下,需要先確定滑動(dòng)平均值。確定平均值之后,根據(jù)測(cè)量值相對(duì)于平均值的偏差可以指示按鍵是否被按下。對(duì)于我們的系統(tǒng),讀數(shù)下降表示按鍵按下。因?yàn)樯婕暗揭恍┉h(huán)境效應(yīng)和其他因素(例如噪聲),所以必須設(shè)置一定的容限。使用4個(gè)變量來(lái)確定按鍵是否被按下:

           unsigned char reading;  // 讀數(shù)
           unsigned char average;  // 平均值
           unsigned char trip;  // 門限值
           unsigned char hyst;  // 傳感器遲滯值

          檢測(cè)按下的最簡(jiǎn)單方式如下:

           if (reading < average – trip) {
            Buttons.SENSOR0 = PRESSED;
           } else {
            Buttons.SENSOR0 = UNPRESSED;
           }
           
          但是,該系統(tǒng)未提供遲滯值,若讀數(shù)在均值與判決門限值之差附近上下變化,就會(huì)出現(xiàn)系統(tǒng)在判定按下與未按下之間來(lái)回振蕩這一糟糕的情形。為了避免這一點(diǎn),需要包含遲滯值:

           if (reading < average – trip) {
            Buttons.SENSOR0 = PRESSED;
           } else if (reading > average – trip + hyst) {
            Buttons.SENSOR0 = UNPRESSED;
           }

          以上代碼在按鈕釋放中增添了遲滯值,使按鈕不會(huì)產(chǎn)生振動(dòng)。這也為電容開關(guān)構(gòu)造了最低程度的消抖功能。機(jī)械按鈕會(huì)在0-VDD之間來(lái)回抖動(dòng)。電容按鈕不會(huì)產(chǎn)生該問(wèn)題;但是,通過(guò)增添遲滯值,按鈕按下的操作與原來(lái)無(wú)異,只是加強(qiáng)了對(duì)按鈕釋放的判斷。這可以產(chǎn)生最低程度的消抖效果,因?yàn)閱未伟聪氯匀豢梢杂|發(fā)按鍵。要進(jìn)一步增強(qiáng)消抖,可以要求連續(xù)幾次的傳感器讀數(shù)均有效,才表示按鈕確實(shí)按下,然后向應(yīng)用程序指示按鈕被按下。這樣可以防止虛假的低讀數(shù)影響系統(tǒng)。

          復(fù)雜解碼方案

          上面用于確定按鈕是否被按下的解碼方案是相當(dāng)簡(jiǎn)單的。在本文的以下部分中,將使用較復(fù)雜的方案。它們包括基于百分比的檢測(cè)、多鍵表決,以及計(jì)算量很少的百分比按下檢測(cè)。此外,還將討論何時(shí)使用簡(jiǎn)單方案,何時(shí)使用較復(fù)雜的方案。


          在前面的簡(jiǎn)單方案中,門限值變量trip是一個(gè)低于平均值的絕對(duì)值。更好的做法是采用減法求一個(gè)相對(duì)值,例如相對(duì)于標(biāo)稱值的百分比偏差。為了實(shí)現(xiàn)這一點(diǎn),必須執(zhí)行更多的計(jì)算,這就要求系統(tǒng)作出折衷。使用絕對(duì)門限值需要更多地了解系統(tǒng)的工作,而使用基于百分比的系統(tǒng)可適應(yīng)許多處于合理限度內(nèi)的系統(tǒng)。手指按下產(chǎn)生的電容變化通常介于1%至20%這一可檢測(cè)范圍之間。如果手指按下產(chǎn)生的讀數(shù)變化小于1%,系統(tǒng)會(huì)遇到錯(cuò)誤。觸摸裸露金屬傳感器產(chǎn)生的讀數(shù)會(huì)高于20%,但它并不常用。如果系統(tǒng)以這種方式工作,則可以采用簡(jiǎn)單開關(guān)算法。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();