《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 顯示光電 > 設(shè)計(jì)應(yīng)用 > SSP接口的觸摸屏軟硬件系統(tǒng)設(shè)計(jì)
SSP接口的觸摸屏軟硬件系統(tǒng)設(shè)計(jì)
劉榮林 程曉東
摘要: 本設(shè)計(jì)實(shí)現(xiàn)了觸摸屏的基本功能,,其中包括硬件電路的設(shè)計(jì)與調(diào)試,,SSP或IO模擬時(shí)序控制觸摸屏軟件實(shí)現(xiàn)。經(jīng)過調(diào)試后,,觸摸屏工作正常,,能夠?qū)崿F(xiàn)系統(tǒng)所要求的功能,。
Abstract:
Key words :

    嵌入式系統(tǒng)觸摸屏的應(yīng)用越來越廣泛,,諸如以PDA為標(biāo)志的數(shù)碼產(chǎn)品和工業(yè)領(lǐng)域中使用的大量儀器儀表都逐漸選用LCD觸摸屏作為系統(tǒng)的輸入設(shè)備。觸摸屏分為電阻,、電容,、表面聲波、紅外線掃描和矢量壓力傳感等,,其中用的最普遍的是四線或五線電阻觸摸屏,。四線電阻觸摸屏是由兩個(gè)透明電阻膜構(gòu)成的,在它的水平和垂直電阻網(wǎng)上施加電壓,,就可通過A/D轉(zhuǎn)換面板在觸摸點(diǎn)測量出電壓,,從而對(duì)應(yīng)出坐標(biāo)值。本文除簡單介紹ADS7843工作原理之外,,主要討論觸摸屏控制器的兩種控制方式,并給出了具體的應(yīng)用連接圖,。

1 觸摸屏控制器工作原理

    ADS7843內(nèi)部是一個(gè)由多個(gè)模擬開關(guān)組成的供電-測量電路網(wǎng)絡(luò)和12位的ADC組成,,如圖1所示。其最高轉(zhuǎn)換頻率達(dá)125 kHz,。X+,、Y+、X-,、Y-是轉(zhuǎn)換器模擬輸入端,,實(shí)際上是一個(gè)四通道多路器。觸摸屏工作時(shí),,上下導(dǎo)體層相當(dāng)于電阻網(wǎng)絡(luò),。當(dāng)在X方向的電極對(duì)上施加一確定的電壓,而Y方向電極對(duì)上不加電壓時(shí),,在X平行電壓場中,,觸點(diǎn)處的電壓值可以在Y+(或Y-)電極上反映出來,通過測量Y+電極對(duì)地的電壓大小,,便可得知觸點(diǎn)的X坐標(biāo)值,。同理,當(dāng)在Y電極對(duì)上加電壓,,而X電極對(duì)上不加電壓時(shí),,通過測量X+電極的電壓,便可得知觸點(diǎn)的y坐標(biāo),。

2 硬件接口電路

    觸摸屏輸入系統(tǒng)由微控制器,、觸摸屏、觸摸屏控制器三部分組成,。圖2是一個(gè)實(shí)際的觸摸屏輸入系統(tǒng),。在該系統(tǒng)中,,微控制器采用Philips公司ARM7內(nèi)核的LPC2387;觸摸屏采用Sharp公司的四線式電阻觸摸屏,;觸摸屏控制器采用BB公司的ADS7843,。LPC2387通過SSP接口和外部中斷EINT0與ADS7843相連。當(dāng)筆中斷信號(hào)為低時(shí),,表示有觸摸發(fā)生,。SSP為同步串行接口控制器,可控制SPI,、4線SSI或半導(dǎo)體Microwire總線操作,,通過配置寄存器將其設(shè)定為Mi-crowire通信方式,由LPC2387啟動(dòng)兩次Microwire傳送來完成坐標(biāo)采集,。第1次輸入采集X坐標(biāo)的控制字輸出未經(jīng)變換的X坐標(biāo),。第2次輸入Y坐標(biāo)控制字輸出未經(jīng)變換Y坐標(biāo)。當(dāng)然也可以不用SSP功能,,采用通用I/O端口模擬ADS7843轉(zhuǎn)換時(shí)序達(dá)到觸摸控制的效果,。ADS7843轉(zhuǎn)換時(shí)序及控制字格式如圖3所示。

 

 

 

3 系統(tǒng)軟件設(shè)計(jì)

    觸摸屏軟件設(shè)計(jì)包括I/O口初始化程序,、筆中斷服務(wù)程序和ADS7843測量子程序三部分,。當(dāng)有觸摸時(shí),ADS7843向LPC2387發(fā)出中斷請(qǐng)求并響應(yīng),,程序跳至啟動(dòng)通信代碼處,,讀取ADS7843的轉(zhuǎn)換結(jié)果,從而得到觸摸點(diǎn)的坐標(biāo),。在ADS7843測量子程序中,,完成一次微處理器和ADS7843之間的通信。

    觸摸屏的軟件設(shè)計(jì)可采用兩種方式:一種是利用SSP接口的Microwire方式直接控制,;另一種是I/O端口模擬ADS7843轉(zhuǎn)換時(shí)序來實(shí)現(xiàn)坐標(biāo)采集,。

3.1 Microwire方式

    Microwire格式采用半雙工模式。每次串行發(fā)送8位控制字開始,,在發(fā)送控制字過程中,,SSP不接收數(shù)據(jù),待發(fā)送完畢后,,片外從器件ADS7843對(duì)其譯碼,,并且最后一位發(fā)送結(jié)束的一個(gè)串行時(shí)鐘后,才返回主機(jī)所需的數(shù)據(jù),。它的這種傳輸方式恰好與ADS7843轉(zhuǎn)換時(shí)序吻合,,只要對(duì)SSP寄存器配置準(zhǔn)確便可方便地控制觸摸屏完成坐標(biāo)的采集。

    部分程序代碼如下:

 

 

    ADS7843_Get()為測量取值子程序,通過控制SSPODR寄存器實(shí)現(xiàn)控制字的發(fā)送和邏輯坐標(biāo)值的接收,。

3.2 I/O口模擬時(shí)序方式

    鑒于許多微控制器沒有SSP接口,,可以采取I/O模擬ADS7843轉(zhuǎn)換時(shí)序來實(shí)現(xiàn)坐標(biāo)采集。此方式較為繁瑣,,與SSP接口的觸摸屏控制方式比較最為顯著的缺點(diǎn)是:響應(yīng)速度較慢,,靈敏度較低,微處理器與觸摸屏控制器間的通信時(shí)間較長,,降低了系統(tǒng)的效率,。然而此種方式卻具有一般性,任何處理器都可采以用此方式來實(shí)現(xiàn)觸摸控制,。

    I/O模擬時(shí)序坐標(biāo)采集程序如下:

 

 

4 坐標(biāo)轉(zhuǎn)換

    從觸摸屏控制器獲得的X與Y值僅是對(duì)當(dāng)前觸摸點(diǎn)電壓值的A/D轉(zhuǎn)換值,,它不具有實(shí)用價(jià)值。這個(gè)值的大小不但與觸摸屏的分辨率有關(guān),,而且也與觸摸屏和LCD的貼合狀況有關(guān),。LCD與觸摸屏的分辨率和坐標(biāo)一般來說是不一樣的,因此,,如果想得到體現(xiàn)LCD坐標(biāo)的觸摸屏位置,,還需要在程序中進(jìn)行轉(zhuǎn)換。轉(zhuǎn)換公式如下:

 

 

    其中,,Tch_Xmax、Tch_Xmin,、Tch_Yma x和Tch_Ym-in是觸摸屏返回電壓值X,、Y軸的范圍;LCDWidth,、LCD-Height是液晶屏的寬度與高度,。

結(jié) 語

    本設(shè)計(jì)實(shí)現(xiàn)了觸摸屏的基本功能,其中包括硬件電路的設(shè)計(jì)與調(diào)試,,SSP或I/O模擬時(shí)序控制觸摸屏軟件實(shí)現(xiàn),。經(jīng)過調(diào)試后,觸摸屏工作正常,,能夠?qū)崿F(xiàn)系統(tǒng)所要求的功能,。使用Philips公司的LPC2387微處理器來設(shè)計(jì)的四線電阻式觸摸屏產(chǎn)品在實(shí)際應(yīng)用中得到較好的效果,屏幕顯示無閃爍,,畫面切換速度快,,觸摸屏響應(yīng)迅速。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。