電容式觸摸技術目前已經(jīng)趨于成熟,并且已經(jīng)應用于量產(chǎn)的產(chǎn)品中,其中最著名的設計當屬蘋果公司生產(chǎn)的iPhone的full touch。電容式觸摸技術較之電阻式觸摸技術生產(chǎn)成本更加低廉,使用壽命更長,反應更加靈敏,并且發(fā)展初期的精度不足的問題現(xiàn)在已經(jīng)完全解決,有著越來越多的觸摸產(chǎn)品開始使用電容式感應設計。
觸摸芯片
本設計所使用的芯片為ATMEL的AT42QT2160電容式觸摸按鍵芯片,主機平臺基于AT91SAM9260的Linux2.6嵌入式系統(tǒng)。該芯片觸摸接口豐富,通用性較強。芯片可外擴16個獨立觸摸按鍵和一個具有8檔位的滑條,該芯片還具有3個通用I/O口,可由用戶自行配置其功能。
設計思路
觸摸芯片AT42QT2160通過I2C與主MCU通信,并配有一根中斷線用于通知Linux操作系統(tǒng)有觸摸鍵值發(fā)生。每當有中斷發(fā)生時,鍵盤中斷服務程序通過I2C讀取AT42QT2160中存儲的當前鍵值,并與上一次的鍵值作比較,把鍵值改變了的按鍵的狀態(tài)發(fā)送給系統(tǒng),通過鍵盤tty設備傳遞給系統(tǒng)。
硬件設計
AT42QT2160部分電路設計如圖1。根據(jù)實際應用的需要,本次設計只使用了12個觸摸按鍵,沒有用到滑條。由于AT42QT2160是基于電容式的觸摸芯片,對電容變化極其敏感,所以在布PCB(印制電路板)時一定要防止各感應線之間相互串擾,應該讓 X軸和Y軸之間的距離要盡可能得大。
觸摸鍵盤驅動設計
本驅動運行在ARM Linux2.6.25下,驅動程序共分三部分。
1. I2C設備驅動:用于讀寫AT42QT2160。
2. 中斷服務程序:用于響應AT42QT2160的中斷,并向系統(tǒng)發(fā)送鍵值。
3. 字符設備驅動:用于與應用層交互(動態(tài)設置AT42QT2160)。
驅動程序所要做的就是當收到AT42QT2160的中斷信號后,通過I2C總線讀到當前的鍵值,然后將改變的鍵值發(fā)送給系統(tǒng),程序流程如圖2。
在整個觸摸鍵方案的設計中,PCB的設計尤為重要,這是觸摸鍵靈敏與否的關鍵。對于觸摸鍵的控制,寄存器的調校也十分重要的。AT42QT2160提供了幾個寄存器用于靈敏度、掃描頻率、觸發(fā)閥值等等的設置,這些寄存器是為了克服PCB的布線差異而提供給客戶去微調的,設置好了這些寄存器后,您的觸摸鍵將會達到一個最佳的狀態(tài)。
大家好,我是鲏。認識我的朋友都知道,我是一個實踐派,相比研究枯燥的理論知識,我更喜歡做自己想做的項目,用技術來實現(xiàn)自己的想法的感覺真的很棒。所以從大學期間一直到現(xiàn)在,除了工作中的項目外,我依然保持著自己做項目的習慣,有堅...
關鍵字: 系統(tǒng)設計 技術選型 需求分析學習Linux動態(tài)鏈接庫是一個繞不開的話題,我們今天就一起來看一下什么是動態(tài)鏈接庫、動態(tài)鏈接庫有什么好處、如何編譯出一個動態(tài)鏈接庫等幾個關于動態(tài)鏈接庫的幾個基本概念,廢話少說咱們直接開始
關鍵字: Linux 靜態(tài)鏈接庫 動態(tài)鏈接庫下一代LinuxONE服務器擴展了IBM幫助行業(yè)客戶實現(xiàn)可持續(xù)目標的能力,花旗銀行就是很好的例子 北京2022年9月14日 /美通社/ -- IBM(紐約證券交易所:IBM)于美國東部時間9月13日發(fā)布其下一...
關鍵字: IBM Linux X86 數(shù)據(jù)中心(全球TMT2022年8月30日訊)近日,在2022英特爾中國數(shù)據(jù)中心合作伙伴技術峰會上,英特爾與浪潮信息等產(chǎn)業(yè)生態(tài)伙伴聯(lián)合發(fā)布了《綠色數(shù)據(jù)中心創(chuàng)新實踐 -- 冷板液冷系統(tǒng)設計參考》白皮書,分享冷板液冷技術關鍵部件的最...
關鍵字: 系統(tǒng)設計 英特爾 數(shù)據(jù)中心 生態(tài)系統(tǒng)