0 引言
觸摸屏是電子產(chǎn)品中常用的一種輸入設備,,通常與液晶屏搭配使用,用來取代傳統(tǒng)的鍵盤輸入,,廣泛應用于電子產(chǎn)品與工業(yè)控制中,。觸摸屏通常附著在液晶顯示屏表面,通過微處理器對觸摸屏的控制,,實現(xiàn)觸摸屏對液晶屏圖像界面的直接操作,。電阻式觸摸屏由于成本低,無專利技術的原因,是嵌入式設備應用最為廣泛的一種觸摸屏,。本文提出一種電阻式觸摸屏控制器的設計方法,,為業(yè)界主流低端手機基帶芯片MTK6223D提供觸摸屏控制的功能擴展;同時針對電阻式觸摸屏x,,y方向總電阻測量的問題,,提出一種自適應的觸摸屏x,y向電阻測量方法,,既提高壓力電阻的計算精度,,又可避免人工測量電阻式觸摸屏的電阻參數(shù),有效節(jié)約手機開發(fā)成本和生產(chǎn)時間,。
1 電阻式觸摸屏結(jié)構(gòu)
電阻式觸摸屏根據(jù)引出信號線的數(shù)量,,可以劃分為4線、5線,、6線,、7線、8線等類型,,其中以4線電阻式觸摸屏最為常見,,結(jié)構(gòu)最為典型。本文討論的電阻式觸摸屏,,均指四線結(jié)構(gòu)電阻式觸摸屏,。
1.1 基本結(jié)構(gòu)
電阻式觸摸屏在玻璃或丙烯酸基板上覆蓋有兩層透平、均勻?qū)щ姷腎TO層,,分別作為X電極和Y電極,,它們之間由均勻排列的透明格點分開絕緣。其中下層的ITO與玻璃基板附著,,上層的ITO附著在PET薄膜上,。X電極和Y電極的正負端由“導電條”分別從兩端引出,且X電極和Y電極導電條的位置相互垂直,。引出端X-,,X+,Y-,,Y+一共4條線,,這也是4線電阻式觸摸屏名稱的由來。當有物體接觸觸摸屏表面并施以一定的壓力時,,上層的ITO導電層發(fā)生形變與下層ITO發(fā)生接觸,,進而2個導電層間在該位置的電壓和電阻發(fā)生變化??刂破鳈z測電壓變化后,,在x和y 2個方向上產(chǎn)生信號,,讀取觸點位置在x,y方向上的電壓值后,,同該x,,y方向上的參考電壓進行比較,計算出觸點的坐標,。這是電阻式觸摸屏的基本工作原理,。
1.2 坐標的估算
計算電阻式觸摸屏觸點的x,y坐標分為如下兩步(見圖1):
(1)計算y坐標,,在Y+電極施加驅(qū)動電壓Vref,,Y-電極接地,X+作為引出端測量得到接觸點的電壓,,由于ITO層均勻?qū)щ?,觸點電壓與Vref電壓之比等于觸點y坐標與屏高度之比。
(2)計算x坐標,,在X+電極施加驅(qū)動電壓Vref,,X-電極接地,Y+作為引出端測量得到接觸點的電壓,,由于ITO層均勻?qū)щ?,觸點電壓與Vref電壓之比等于觸點x坐標與屏寬度之比,。測得的電壓通常由ADC轉(zhuǎn)化為數(shù)字信號,,再進行簡單處理就可以作為坐標值,判斷觸點的實際位置,。
2 觸摸屏控制器的設計
本文采用的觸摸屏控制系統(tǒng)由基帶芯片MFK6223D,、觸摸屏控制器和觸摸屏3部分組成,如圖2所示,。MTK6223D是聯(lián)發(fā)科技(MTK)的一款低端GPRS/GSM基帶芯片,,該芯片將ARM7控制模塊、DSP模塊,、射頻模塊和電源管理等集成到一起,,采用Nucleus Plus操作系統(tǒng),是目前業(yè)界一款主流的低端手機基帶芯片,。但是MTK6223D沒有提供對觸摸屏的支持,,為進一步強化手機的功能,MTK6223D需要搭配觸摸屏控制器芯片,,實現(xiàn)功能更為強大的手機設計,。本文提出的觸摸屏控制器主要實現(xiàn)對觸摸屏信號的模/數(shù)轉(zhuǎn)換,坐標值計算,,壓力電阻阻值計算和抬筆落筆中斷判斷4項功能,,并通過AMBA總線向手機基帶芯片上傳數(shù)據(jù),。
2.1 觸摸屏控制器
觸摸屏控制器分為模擬信號處理和數(shù)字控制電路2個部分,如圖3所示,。模擬信號處理部分負責模/數(shù)轉(zhuǎn)換,、測量x,y方向坐標與量化等工作,。數(shù)字控制電路負責控制測量流程和計算壓力電阻阻值等功能,,同時數(shù)字控制電路也要向基帶芯片提供中斷報告和總線訪問機制。
2.1.1 模擬信號處理
模擬信號處理如圖4所示,。
模/數(shù)轉(zhuǎn)換部分的主要工作是將觸摸屏傳來的模擬信號量化成數(shù)字信號,,同時將向數(shù)字控制部分提供相應接口。SP5368觸摸屏控制器使用逐次逼近模數(shù)信號轉(zhuǎn)換器(SAR ADC),,將模擬信號轉(zhuǎn)化為8位的數(shù)字信號,,共有256個量化級別,基本滿足分辨率在320×240以下觸摸屏的測量精度,。
模擬信號的測量分為差分測量和單端測量兩種模式,,如圖5所示。差分模式的測量精度較高,,但是功耗較高,。單端模式的功耗較小,但是測量精度較低,,同時存在部分碼值多余的現(xiàn)象,。在實際應用場合,應視需求的不同,,選擇合適的測量方式,。
2.1.2 數(shù)字控制電路
數(shù)字控制電路主要的功能有2項,一個是控制驅(qū)動電路,,完成對觸摸屏觸點坐標和壓力電阻的采集,,另一個是計算觸點壓力值,向上位機(上層系統(tǒng))提供抬筆和落筆兩種類型的中斷,。其數(shù)字電路的示意圖如圖6所示,。
2.2 壓力電阻阻值的計算與分析
觸摸屏控制器除了向操作系統(tǒng)提供觸點x,y方向坐標外,,另一項功能是向系統(tǒng)報告抬筆中斷和落筆中斷,。在電阻式觸摸屏結(jié)構(gòu)中,觸摸屏的抬筆中斷或落筆中斷,,是通過判斷壓力電阻阻值的變化產(chǎn)生的,。
壓力值反映了觸摸屏2層導電薄膜之間電阻值RTouch的變化,壓力越大,,RTouch就越小,,壓力越小,,RTouch就越大。計算壓力值,,實際上就是計算觸點位置的RTouch,。通過對觸點壓力的計算,系統(tǒng)可以判斷擠壓動作是抬筆動作還是落筆動作,。電阻式觸摸屏壓力計算的基本原理分三步,,如圖7所示。
(1)X-接地,,X+接電源,,Y+接ADC得到觸點的X坐標;
(2)X-接地,,Y+接電源,,X+接ADC得到Z1點的位置Z1;
(3)X-接地,,Y+接電源,,Y-接ADC得到Z2點的位置Z2。
然后,,結(jié)合xy方向的總電阻值就可以求出:
計算出壓力電阻RTouch后,,需要同閾值電阻RTup,RTdown(RTdown
由于市場上觸摸屏品牌眾多,,各廠家的觸摸屏參數(shù)存在差異,,所以觸摸屏x,y方向總電阻RREF會隨著觸摸屏型號的不同發(fā)生變動,。對于同一型號觸摸屏,,由于制作工藝的問題,,RREF也會出現(xiàn)上下浮動。在觸摸屏的壓力電阻計算中,,RREF是一項主要的計算參數(shù),,因此在實際的電子產(chǎn)品開發(fā)中,針對不同觸摸屏,,測量并修正觸摸屏x,,y方向的總電阻RREF是一項十分重要的工作。但是在產(chǎn)品成型之前,,如果對每一個觸摸屏個體進行單獨的RREF測量和記錄是一項耗時并且浪費成本的工作,。目前業(yè)界通用的做法是每種型號的觸摸屏采用統(tǒng)一的參數(shù),并不對每個觸摸屏進行單獨的測量,。
針對上述問題,,為了更加精確地計算壓力電阻,筆者提出了一種計算電阻式觸摸屏RRE的方法,。該方法只需要對已封裝在產(chǎn)品中的觸摸屏進行簡單的點擊測試,,然后結(jié)合軟件算法,即可計算出觸摸屏的RREF,。另外,,由于該方法和觸摸屏校正采用的點擊方式非常相似,因此該測量過程可以和觸摸屏校正同步完成,。所以,,該方法可以在沒有消耗時間和成本的前提下,完成對觸摸屏個體的RREF計算與修正,,同時具備較好的測量精度,。為便于討論,下面僅討論x方向RREF的測算,,y方向同理,。其基本步驟如下:
(1)在差分模式下,點擊觸摸屏任意一條對角線方向的2個頂角A和B,,獲取觸摸屏有效面積內(nèi)x方向上電壓量化值Xmin_d,,Xmax_d(量化值為1~256的區(qū)間)。在差分模式下,,觸點電壓量化值是觸點處電阻同觸摸屏總電阻的量化值比值,,如圖8所示可得到以下關系。
(2)點擊觸摸屏任意一條對角線方向的2個頂角A和B,,獲取單端模式下觸摸屏有效面積內(nèi)x方向上電壓極值的量化值Xmin_s,、Xmax_s(量化值為1~256的區(qū)間)。不同于差分模式,,單端模式引入了A/D轉(zhuǎn)換電路中MOS場效應管開關,。對于芯片廠商而言,,MOS場效應管參數(shù)和其電壓參數(shù)都是已知的。故在這種情況下,,觸點電壓量化值是觸點處電阻同觸摸屏總電阻與MOS管電阻之和的比值,。如圖9所示可得到以下關系。
(3)由式(6),式(7)可以得到NMOS場效應管RN與R3的關系,,其中VDS是NMOS管的漏極電壓,。
結(jié)合MOS場效應管的漏極電流公式,對于一個已知的數(shù)/模轉(zhuǎn)換芯片,,Vss,,μN,Cox,,W,,L,VGS和Vth均為已知參數(shù),;聯(lián)立式(9),、式(10),可以推出通過MOS管的漏極電流為:
又因為IR=VDD且,,結(jié)合式(3),(4),,進而最終求出x方向的總電阻Rref,。
3 MTK驅(qū)動層
MTK為其開發(fā)的系列基帶芯片提供定制的嵌入式操作系統(tǒng),該嵌入式操作系統(tǒng)是基于Nucleus Plus搶占式多任務系統(tǒng)內(nèi)核擴展而成,,并通過宏定義開關對不同型號的基帶芯片提供支持,。MTK定制軟件平臺的觸摸屏驅(qū)動以任務(Task)的形式存在,,任務的函數(shù)人口是位于touch_pan-el_main.c中的tp_task_main函數(shù),觸摸屏任務通過輪詢的方式監(jiān)測觸摸屏的狀態(tài)信息,,進而完成對不同狀態(tài)的事件響應,。
MTK6223D基帶芯片自身并不支持觸摸屏功能,所以基于MTK6223D的嵌入式平臺通過宏定義開關封閉了平臺對觸摸屏相關功能的支持,,但觸摸屏的相關代碼和架構(gòu)仍然得到了保留,。在MTK6223D搭配觸摸屏的手機設計方案中,觸摸屏功能通過外界觸摸屏控制器得到實現(xiàn),,觸摸屏的底層驅(qū)動是在MTK原有架構(gòu)的基礎上擴展而成,。MTK嵌入式操作系統(tǒng)將觸摸屏的狀態(tài)信息保存在TouchPanelDataStruct結(jié)構(gòu)體中。當嵌入式系統(tǒng)收到來自觸摸屏控制器的中斷時,,中斷函數(shù)完成對Touch_Panel_PenState_enum中state變量的更新,,然后tp_task_main函數(shù)通過對state變量的判斷,確認觸摸筆屏處于UP狀態(tài)還是DOWN狀態(tài),,同時讀取觸摸屏的當前坐標,。
4 結(jié)語
該文研究了電阻式觸摸屏的工作原理,提出一種和基帶芯片MTK6223D搭配使用觸摸屏控制器的設計與實現(xiàn),,并根據(jù)實際生產(chǎn)設計需求,,提出一種自適應的測量觸摸屏總電阻阻值的方法。該測量方法通過軟件和觸摸屏硬件控制器配合完成,,并可與觸摸屏校正同步實現(xiàn),。該方法具有較高的測量精度,不用在產(chǎn)品組裝前,,對觸摸屏元器件進行單獨測量,,有效地節(jié)約了產(chǎn)品研發(fā)生產(chǎn)的時間和成本,對于嵌入式產(chǎn)品設計與開發(fā)具有較為實際的意義,。