用ADS7846設(shè)計(jì)嵌入系統(tǒng)的觸摸屏
關(guān)鍵詞: 觸摸屏;觸摸屏控制器;嵌入式系統(tǒng)
系統(tǒng)組成
觸摸屏輸入系統(tǒng)由觸摸屏、觸摸屏控制器和微控制器三部分組成。圖1示出了一個(gè)實(shí)際的觸摸屏輸入系統(tǒng),系統(tǒng)中觸摸屏采用四線電阻式觸摸屏,觸摸屏控制器采用TI(BB)公司的ADS7846。
觸摸屏
觸摸屏附著在顯示器的表面,與顯示器相配合使用,如果能測(cè)量出觸摸點(diǎn)在屏幕上的坐標(biāo)位置,則可根據(jù)顯示屏上對(duì)應(yīng)坐標(biāo)點(diǎn)的顯示內(nèi)容或圖符獲知觸摸者的意圖。觸摸屏按其技術(shù)原理可分為五類:矢量壓力傳感式、電阻式、電容式、紅外線式、表面聲波式,其中電阻式觸摸屏在嵌入式系統(tǒng)中用的較多。電阻觸摸屏是一塊4層的透明的復(fù)合薄膜屏(圖2),最下面是玻璃或有機(jī)玻璃構(gòu)成的基層,最上面是一層外表面經(jīng)過硬化處理從而光滑防刮的塑料層,中間是兩層金屬導(dǎo)電層,分別在基層之上和塑料層內(nèi)表面,在兩導(dǎo)電層之間有許多細(xì)小的透明隔離點(diǎn)把它們隔開。當(dāng)手指觸摸屏幕時(shí),兩導(dǎo)電層在觸摸點(diǎn)處接觸。
觸摸屏的兩個(gè)金屬導(dǎo)電層是觸摸屏的兩個(gè)工作面,在每個(gè)工作面的兩端各涂有一條銀膠,稱為該工作面的一對(duì)電極,若在一個(gè)工作面的電極對(duì)上施加電壓,則在該工作面上就會(huì)形成均勻連續(xù)的平行電壓分布。如圖1所示,當(dāng)在X方向的電極對(duì)上施加一確定的電壓,而Y方向電極對(duì)上不加電壓時(shí),在X平行電壓場(chǎng)中,觸點(diǎn)處的電壓值可以在Y+(或Y-)電極上反映出來(lái),通過測(cè)量Y+電極對(duì)地的電壓大小,便可得知觸點(diǎn)的X坐標(biāo)值。同理,當(dāng)在Y電極對(duì)上加電壓,而X電極對(duì)上不加電壓時(shí),通過測(cè)量X+電極的電壓,便可得知觸點(diǎn)的Y坐標(biāo)。電阻式觸摸屏有四線和五線兩種。四線式觸摸屏的X工作面和Y工作面分別加在兩個(gè)導(dǎo)電層上,共有四根引出線,分別連到觸摸屏的X電極對(duì)和Y電極對(duì)上。五線式觸摸屏把X工作面和Y工作面都加在玻璃基層的導(dǎo)電涂層上,但工作時(shí),仍是分時(shí)加電壓的,即讓兩個(gè)方向的電壓場(chǎng)分時(shí)工作在同一工作面上,而外導(dǎo)電層則僅僅用來(lái)充當(dāng)導(dǎo)體和電壓測(cè)量電極。因此,五線式觸摸屏的引出線需要5根。
圖1 觸摸屏輸入系統(tǒng)的組成
圖2 觸摸屏的觸摸示意圖
圖3 ADS7846的功能框圖
圖4 測(cè)量關(guān)系
圖5 轉(zhuǎn)換時(shí)序
圖6筆中斷請(qǐng)求
圖7 軟件接口流程圖
ADS7846觸摸屏控制器
各種類型的觸摸屏均有其相應(yīng)的控制器,如:ADS7846是四線式觸摸屏的控制器,而ADS7845是五線式觸摸屏的控制器??刂破鞯闹饕δ苁欠謺r(shí)向X、Y電極對(duì)施加電壓,并把測(cè)量電極上的電壓信號(hào)轉(zhuǎn)換為相應(yīng)觸摸點(diǎn)的X、Y坐標(biāo)。
ADS7846內(nèi)部有一個(gè)由多個(gè)模擬開關(guān)組成的供電-測(cè)量電路網(wǎng)絡(luò)和12位的A/D轉(zhuǎn)換器(見圖3)。ADS7846根據(jù)微控制器發(fā)來(lái)的不同測(cè)量命令導(dǎo)通不同的模擬開關(guān),以便向工作面電極對(duì)提供電壓,并把相應(yīng)測(cè)量電極上的觸點(diǎn)坐標(biāo)位置所對(duì)應(yīng)的電壓模擬量引入A/D轉(zhuǎn)換器。在觸摸點(diǎn)X、Y坐標(biāo)的測(cè)量過程中,測(cè)量電壓與測(cè)量點(diǎn)的等效電路如圖4所示,圖中P為測(cè)量點(diǎn)。
ADS7846與微控制器MMC2107之間通過標(biāo)準(zhǔn)的SPI口相連,由MMC2107啟動(dòng)3次SPI傳送來(lái)完成轉(zhuǎn)換,如圖5所示。第一次SPI傳送由MMC2107向ADS846發(fā)控制字,包括起始位、通道選擇、8/12位模式、差分/單端選擇和掉電模式選擇,接下來(lái)的兩次SPI傳送則是MMC2107從ADS7846取A/D轉(zhuǎn)換結(jié)果數(shù)據(jù)(最后四位自動(dòng)補(bǔ)零),完成觸摸屏控制器和微控制器之間的一次通信。
筆中斷輸出
ADS7846通過筆中斷請(qǐng)求向MMC2107表示有觸摸發(fā)生。如圖6所示,當(dāng)沒有觸摸時(shí),MOSFET①和②打開、③關(guān)閉,則筆中斷輸出引腳通過外加的上拉電阻輸出為高。當(dāng)有觸摸時(shí),①和③打開、②關(guān)閉,則筆中斷輸出引腳通過③內(nèi)部連接到地而輸出為低,從而向MMC2107發(fā)中斷請(qǐng)求。
實(shí)際應(yīng)用舉例
觸摸屏輸入系統(tǒng)的硬件連線如圖1所示,當(dāng)有觸摸時(shí)ADS7846向MMC2107發(fā)中斷請(qǐng)求,由MMC2107響應(yīng)該中斷請(qǐng)求,啟動(dòng)圖5所示的通信過程,讀取ADS7846的轉(zhuǎn)換結(jié)果,從而得到觸摸點(diǎn)的坐標(biāo),其軟件流程如圖7所示,包括系統(tǒng)初始化(圖中省略)、中斷服務(wù)程序和ADS7846測(cè)量程序三部分。在ADS7846測(cè)量程序中,完成一次MMC2107和ADS7846之間的通信過程。
在測(cè)量過程中發(fā)現(xiàn)ADS7846的外時(shí)鐘為50KHz~60KHz時(shí)是比較適宜的。ADS7846只能作為SPI的從設(shè)備,各信號(hào)的時(shí)序是完全固定的,因此需要配置MMC2107 SPI接口信號(hào)的時(shí)序使之完全符合ADS7846的時(shí)序,尤其是從選擇信號(hào)SS#在一次通信過程中應(yīng)一直為低(見圖5)。
實(shí)際測(cè)量結(jié)果如表1、表2所示: 表1是在一條基本豎直的直線上等距離測(cè)量的幾個(gè)點(diǎn)的坐標(biāo)值,從表中可得X坐標(biāo)的斜率為64.25/mm,表2是一條基本水平的直線上等距離測(cè)量的幾個(gè)點(diǎn)的坐標(biāo)值,可知Y坐標(biāo)變化斜率為46.33/mm?!?
評(píng)論