摘要: 觸摸屏逐漸取代鍵盤成為嵌入式系統(tǒng)常選用的人機(jī)交互工具。本文以電阻式觸摸屏和觸摸屏控制器ADS7846為例介紹觸摸屏及其控制器的原理,并以一個(gè)應(yīng)用實(shí)例說明如何用觸摸屏及其控制器構(gòu)成嵌入式系統(tǒng)的輸入系統(tǒng)。 關(guān)鍵詞: 嵌入式系統(tǒng)、觸摸屏、觸摸屏控制器 Abstract: The touch-screen gradually replaces the keyboard and becomes the input system of the embedded system. This paper introduces the theory of the resistance touch-screen and its controller ADS7846, and gives an example to show how to form the input system of the embedded system with them. Key word: embedded system, touch-screen, touch-screen controller. 在便攜式的電子類產(chǎn)品中,觸摸屏由于其輕便、占用空間少、方便靈活等優(yōu)點(diǎn),已經(jīng)逐漸取代鍵盤成為嵌入式計(jì)算機(jī)系統(tǒng)的輸入設(shè)備?;谟|摸屏的輸入系統(tǒng)實(shí)際上是由觸摸屏、觸摸屏控制器、微控制器及其相應(yīng)軟件構(gòu)成的,本文從系統(tǒng)的硬件組成入手,分析整個(gè)系統(tǒng)的硬軟件原理及其實(shí)現(xiàn)方法。 一. 系統(tǒng)組成原理 觸摸屏輸入系統(tǒng)由觸摸屏、觸摸屏控制器和微控制器三部分組成。圖1示出了一個(gè)實(shí)際的觸摸屏輸入系統(tǒng),在該系統(tǒng)中觸摸屏采用信利公司的四線電阻式觸摸屏,觸摸屏控制器采用BB公司的ADS7846,微控制器為Motorola M·CORE系列的MMC2107。 1. 觸摸屏原理 觸摸屏附著在顯示器的表面,與顯示器相配合使用,如果能測量出觸摸點(diǎn)在屏幕上的坐標(biāo)位置,則可根據(jù)顯示屏上對應(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è)工作面的兩端各涂有一條銀膠,稱為該工作面的一對電極,若在一個(gè)工作面的電極對上施加電壓,則在該工作面上就會(huì)形成均勻連續(xù)的平行電壓分布。如圖1所示,當(dāng)在X方向的電極對上施加一確定的電壓,而Y方向電極對上不加電壓時(shí),在X平行電壓場中,觸點(diǎn)處的電壓值可以在Y+(或Y-)電極上反映出來,通過測量Y+電極對地的電壓大小,便可得知觸點(diǎn)的X坐標(biāo)值。同理,當(dāng)在Y電極對上加電壓,而X電極對上不加電壓時(shí),通過測量X+電極的電壓,便可得知觸點(diǎn)的Y坐標(biāo)。電阻式觸摸屏有四線和五線兩種。四線式觸摸屏的X工作面和Y工作面分別加在兩個(gè)導(dǎo)電層上,共有四根引出線,分別連到觸摸屏的X電極對和Y電極對上。五線式觸摸屏把X工作面和Y工作面都加在玻璃基層的導(dǎo)電涂層上,但工作時(shí),仍是分時(shí)加電壓的,即讓兩個(gè)方向的電壓場分時(shí)工作在同一工作面上,而外導(dǎo)電層則僅僅用來充當(dāng)導(dǎo)體和電壓測量電極。因此,五線式觸摸屏的引出線需為5根。 2. ADS7846觸摸屏控制器的工作原理 各種類型的觸摸屏均有其相應(yīng)的控制器,如:ADS7846是四線式觸摸屏的控制器,而ADS7845是五線式觸摸屏的控制器??刂破鞯闹饕δ苁欠謺r(shí)向X、Y電極對施加電壓,并把測量電極上的電壓信號轉(zhuǎn)換為相應(yīng)觸摸點(diǎn)的X、Y坐標(biāo)。 1).操作原理 ADS7846內(nèi)部有一個(gè)由多個(gè)模擬開關(guān)組成的供電-測量電路網(wǎng)絡(luò)和12位的A/D轉(zhuǎn)換器。ADS7846根據(jù)微控制器發(fā)來的不同測量命令導(dǎo)通不同的模擬開關(guān),以便向工作面電極對提供電壓,并把相應(yīng)測量電極上的觸點(diǎn)坐標(biāo)位置所對應(yīng)的電壓模擬量引入A/D轉(zhuǎn)換器。在觸摸點(diǎn)X、Y坐標(biāo)的測量過程中,測量電壓與測量點(diǎn)的等效電路如圖4所示,圖中P為測量點(diǎn)。 2).數(shù)字接口 ADS7846與MMC2107之間通過標(biāo)準(zhǔn)的SPI口相連,由MMC2107啟動(dòng)3次SPI傳送來完成轉(zhuǎn)換,如圖5所示。第一次SPI傳送由MMC2107向ADS846發(fā)控制字,包括起始位、通道選擇、8/12位模式、差分/單端選擇和掉電模式選擇,接下來的兩次SPI傳送則是MMC2107從ADS7846取A/D轉(zhuǎn)換結(jié)果數(shù)據(jù)(最后四位自動(dòng)補(bǔ)零),完成觸摸屏控制器和微控制器之間的一次通信。 3).筆中斷(PENIRQ#)輸出 ADS7846通過筆中斷請求向MMC2107表示有觸摸發(fā)生。如圖6所示,當(dāng)沒有觸摸時(shí),MOSFET①和②打開、③關(guān)閉,則筆中斷輸出引腳通過外加的上拉電阻輸出為高。當(dāng)有觸摸時(shí),①和③打開、②關(guān)閉,則筆中斷輸出引腳通過③內(nèi)部連接到地而輸出為低,從而向MMC2107提中斷請求。 二. 實(shí)際應(yīng)用舉例 觸摸屏輸入系統(tǒng)的硬件連線,當(dāng)有觸摸時(shí)ADS7846向MMC2107提中斷請求,由MMC2107響應(yīng)該中斷請求,啟動(dòng)圖5所示的通信過程,讀取ADS7846的轉(zhuǎn)換結(jié)果,從而得到觸摸點(diǎn)的坐標(biāo),其軟件接口如圖7所示,包括系統(tǒng)初始化、中斷服務(wù)程序和ADS7846測量程序三部分。在ADS7846測量程序中,完成一次MMC2107和ADS7846之間的通信過程。 在測量過程中發(fā)現(xiàn)ADS7846的外時(shí)鐘為50KHz~60KHz時(shí)是比較適宜的。ADS7846只能作為SPI的從設(shè)備,各信號的時(shí)序是完全固定的,因此需要配置MMC2107 SPI接口信號的時(shí)序使之完全符合ADS7846的時(shí)序,尤其是從選擇信號SS#在一次通信過程中應(yīng)一直為低。 實(shí)際測量結(jié)果如表1、表2所示: 表1是在一條基本豎直的直線上等距離測量的幾個(gè)點(diǎn)的坐標(biāo)值,從表中可得X坐標(biāo)的斜率為64.25/mm,表2是一條基本水平的直線上等距離測量的幾個(gè)點(diǎn)的坐標(biāo)值,可知Y坐標(biāo)變化斜率為46.33/mm。 |