基于Linux的觸摸鍵系統設計

發(fā)布時(shí)間:2009-7-20 14:33    發(fā)布者:比爾蓋
關(guān)鍵詞: linux , 觸摸鍵 , 系統設計
電容式觸摸技術(shù)目前已經(jīng)趨于成熟,并且已經(jīng)應用于量產(chǎn)的產(chǎn)品中,其中最著(zhù)名的設計當屬蘋(píng)果公司生產(chǎn)的iPhone的full touch。電容式觸摸技術(shù)較之電阻式觸摸技術(shù)生產(chǎn)成本更加低廉,使用壽命更長(cháng),反應更加靈敏,并且發(fā)展初期的精度不足的問(wèn)題現在已經(jīng)完全解決,有著(zhù)越來(lái)越多的觸摸產(chǎn)品開(kāi)始使用電容式感應設計。
  觸摸芯片
  本設計所使用的芯片為ATMEL的AT42QT2160電容式觸摸按鍵芯片,主機平臺基于A(yíng)T91SAM9260的Linux2.6嵌入式系統。該芯片觸摸接口豐富,通用性較強。芯片可外擴16個(gè)獨立觸摸按鍵和一個(gè)具有8檔位的滑條,該芯片還具有3個(gè)通用I/O口,可由用戶(hù)自行配置其功能。
  設計思路
  觸摸芯片AT42QT2160通過(guò)I2C與主MCU通信,并配有一根中斷線(xiàn)用于通知Linux操作系統有觸摸鍵值發(fā)生。每當有中斷發(fā)生時(shí),鍵盤(pán)中斷服務(wù)程序通過(guò)I2C讀取AT42QT2160中存儲的當前鍵值,并與上一次的鍵值作比較,把鍵值改變了的按鍵的狀態(tài)發(fā)送給系統,通過(guò)鍵盤(pán)tty設備傳遞給系統。
  硬件設計
  AT42QT2160部分電路設計如圖1。根據實(shí)際應用的需要,本次設計只使用了12個(gè)觸摸按鍵,沒(méi)有用到滑條。由于A(yíng)T42QT2160是基于電容式的觸摸芯片,對電容變化極其敏感,所以在布PCB(印制電路板)時(shí)一定要防止各感應線(xiàn)之間相互串擾,應該讓 X軸和Y軸之間的距離要盡可能得大。

  觸摸鍵盤(pán)驅動(dòng)設計
  本驅動(dòng)運行在ARM Linux2.6.25下,驅動(dòng)程序共分三部分。
  1. I2C設備驅動(dòng):用于讀寫(xiě)AT42QT2160。
  2. 中斷服務(wù)程序:用于響應AT42QT2160的中斷,并向系統發(fā)送鍵值。
  3. 字符設備驅動(dòng):用于與應用層交互(動(dòng)態(tài)設置AT42QT2160)。
  驅動(dòng)程序所要做的就是當收到AT42QT2160的中斷信號后,通過(guò)I2C總線(xiàn)讀到當前的鍵值,然后將改變的鍵值發(fā)送給系統,程序流程如圖2。

在整個(gè)觸摸鍵方案的設計中,PCB的設計尤為重要,這是觸摸鍵靈敏與否的關(guān)鍵。對于觸摸鍵的控制,寄存器的調校也十分重要的。AT42QT2160提供了幾個(gè)寄存器用于靈敏度、掃描頻率、觸發(fā)閥值等等的設置,這些寄存器是為了克服PCB的布線(xiàn)差異而提供給客戶(hù)去微調的,設置好了這些寄存器后,您的觸摸鍵將會(huì )達到一個(gè)最佳的狀態(tài)。
本文地址:http://selenalain.com/thread-3055-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页