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

          新聞中心

          電容式觸摸替代機(jī)械式按鍵

          作者:MeenakshiSundaram 時(shí)間:2012-05-22 來(lái)源:電子產(chǎn)品世界 收藏

            上述方法可以替代輪詢式鍵盤掃描,同樣的邏輯經(jīng)過(guò)一些調(diào)整就能替代中斷式鍵盤,當(dāng)按下按鈕時(shí),儲(chǔ)存在讀取線的所有數(shù)值都會(huì)經(jīng)過(guò)AND邏輯處理,并通過(guò)讀取線傳送到host端。當(dāng)host端檢測(cè)到信號(hào)并開(kāi)始掃描時(shí),就會(huì)接著進(jìn)行上述的后續(xù)步驟。
            
                  限制

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

            替代過(guò)程中會(huì)面臨到的限制是,控制器利用中斷來(lái)仿真機(jī)械式鍵盤的掃描接口,因此會(huì)產(chǎn)生額外的延遲,中斷延遲 + 處理中斷內(nèi)讀取線的時(shí)間。盡管延遲很短,物理短路發(fā)生僅為一瞬間(通常僅數(shù)奈秒),對(duì)實(shí)際按鈕來(lái)說(shuō)依然會(huì)是限制。在我們的替代系統(tǒng)中,延遲可能長(zhǎng)達(dá)數(shù)微秒,實(shí)際時(shí)間根據(jù)選用控制器而定。須注意的是,host端不必費(fèi)力去消除按鈕的開(kāi)關(guān)彈跳(debounce),因?yàn)橛|摸控制器在報(bào)告按鈕為ON狀態(tài)之前就已經(jīng)完成這項(xiàng)操作??梢宰宧ost端節(jié)省處理時(shí)間,但必須修改host端的固件。圖4顯示如何分析并達(dá)到掃描線的最低波型,并讓掃描線能夠連結(jié)?! ?/p>


          圖4 掃描線波型的限制

            當(dāng)今市場(chǎng)上已有許多產(chǎn)品讓開(kāi)發(fā)人員可以利用按鈕來(lái)替代。其中一款器件就是Cypress的48引腳QFN封裝的Capacitive Sensing Express產(chǎn)品,CY8CMBR2016。這款器件能配置用來(lái)仿真4條掃描線與4條讀取線(如圖5所示) – 共組成16個(gè)按鈕來(lái)替代4x4??梢允褂靡粭l專門的中斷線(一個(gè)獨(dú)立引腳,加上8條掃描/讀取線)。如果您的系統(tǒng)使用輪詢式鍵盤掃描機(jī)制,它可以使用電容感應(yīng)式觸摸按鈕來(lái)替代機(jī)械式鍵盤。如果系統(tǒng)使用中斷式掃描機(jī)制,它提供的中斷線能用來(lái)/或由系統(tǒng)設(shè)定后啟動(dòng)掃描線上的輪詢操作?! ?/p>


          圖5:使用CY8CMBR2016
          電容相關(guān)文章:電容原理
          電容式觸摸屏相關(guān)文章:電容式觸摸屏原理
          電容傳感器相關(guān)文章:電容傳感器原理
          上拉電阻相關(guān)文章:上拉電阻原理

          上一頁(yè) 1 2 3 下一頁(yè)

          關(guān)鍵詞: 電容式觸摸 機(jī)械鍵盤

          評(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); })();