基于ARM微處理器的液晶觸摸屏的接口設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:作為人機(jī)交互的重要手段,液晶觸摸屏使用越來越多,基于微控制器與觸摸屏的接口技術(shù)在工業(yè)控制、智能家電等領(lǐng)域得到應(yīng)用廣泛,開發(fā)微控制器與液晶觸摸屏的接口技術(shù)是智能電子產(chǎn)品設(shè)計(jì)的重要工作;介紹了一款液晶觸摸屏系統(tǒng)的總體設(shè)計(jì)方案、電路接口和編程方法;該系統(tǒng)由TFT液晶屏模塊、觸摸屏和ARM微處理器控制板組成;TFT液晶模塊內(nèi)置SSD1289控制器,尺寸3.2英寸、分辨率240×320像素;觸摸屏由觸摸傳感部件和觸摸屏控制器ADS7843組成;控制板采用ARM7微處理器LPC2148為控制核心;測(cè)試和工程實(shí)踐結(jié)果表明,所設(shè)計(jì)的軟、硬件達(dá)到了各項(xiàng)要求,并且具有操作方便、穩(wěn)定性好、性價(jià)比高等技術(shù)特點(diǎn),有較好的推廣應(yīng)用價(jià)值。
0引言
人機(jī)交互界面的種類較多,如鍵盤、數(shù)碼管顯示器、液晶顯示器及帶觸摸的液晶屏等。決定人機(jī)交互接口方式的主要因素是成本和實(shí)際應(yīng)用的需要。近十年來,液晶觸摸屏以功耗低、重量輕、精度高和良好的人機(jī)界面等技術(shù)特點(diǎn),在電子設(shè)備特別是手持類電子產(chǎn)品中得到了普遍應(yīng)用。帶觸摸的液晶屏,只要能測(cè)量出觸摸點(diǎn)的坐標(biāo)位置,即可根據(jù)屏上對(duì)應(yīng)坐標(biāo)點(diǎn)的顯示內(nèi)容或圖符獲知觸摸者的意圖,通過微處理器處理聲音、圖像、文字及觸摸輸入控制等信息,使之成為能進(jìn)行信息存取、輸入和輸出的集成系統(tǒng)?;谖⒖刂破髋c液晶模塊的硬件接口設(shè)計(jì)及軟件編程在智能系統(tǒng)設(shè)計(jì)中有著重要的應(yīng)用價(jià)值。ARM微處理器,運(yùn)算速度快、資源豐富、性價(jià)比高,是當(dāng)前較為流行的嵌入式控制器。本文介紹的一款基于ARM7微處理器LPC2148接口的3.2寸液晶觸摸屏,具有精度高、彩色顯示逼真、應(yīng)用靈活等特點(diǎn),可作為中高檔電子產(chǎn)品字符、圖像的顯示及人機(jī)對(duì)話的窗口。
1總體設(shè)計(jì)方案
系統(tǒng)的總體設(shè)計(jì)方案如圖1所示。液晶觸摸屏系統(tǒng)由312寸TFT液晶屏模塊、觸摸屏和ARM微處理器控制板組成。
觸摸屏由觸摸傳感部件和觸摸屏控制器ADS7843組成,觸摸傳感部件安裝在LCD液晶屏前面,用于檢測(cè)用戶觸摸位置,用戶觸摸信息送往ADS7843控制器,并轉(zhuǎn)換成觸點(diǎn)坐標(biāo),送給ARM7控制板,LPC2148微處理器與液晶及觸摸模塊相連接,根據(jù)接收到的觸摸信息,進(jìn)行信號(hào)運(yùn)算和處理,輸出蜂鳴器等控制信號(hào),控制液晶屏實(shí)現(xiàn)用戶畫面和數(shù)據(jù)的顯示。
圖1液晶觸摸屏系統(tǒng)總體設(shè)計(jì)方案
2電路及原理
2.1液晶觸摸屏原理及ADS7843觸摸控制電路
原理如圖2所示。
U1為3.2英寸TFT液晶模塊,+3.3V供電;內(nèi)置SSD1289液晶控制器;液晶屏分辨率為240×320像素;屏幕顏色26萬色;屏幕尺寸為57mm×79mm,有效顯示面積為51mm×65mm.SSD1289液晶控制器由16位并行數(shù)據(jù)接口、內(nèi)部控制器和LCD驅(qū)動(dòng)器組成。液晶數(shù)據(jù)傳輸方式為16位并行方式,LPC2148的16根I/O口線分別接液晶模塊的DB0~DB15.PWM為亮度驅(qū)動(dòng)控制輸入,經(jīng)9013三極管放大后作為液晶背光。
觸摸屏部分由觸摸傳感部件和觸摸屏控制器ADS7843(U2)組成。
圖2液晶模塊及觸摸電路原理
觸摸傳感部件是一個(gè)四線電阻屏幕,屏上引出四根線,分別對(duì)應(yīng)X軸和Y軸各兩根。測(cè)量X方向的時(shí)候,將X+,X-之間加上參考電壓Vref,Y-斷開,Y+作為A/D輸入,獲得X方向的電壓;同理測(cè)量Y方向的時(shí)候,將Y+,Y-之間加上參考電壓Vref,X-斷開,X+作為A/D輸入,進(jìn)行A/D轉(zhuǎn)換獲得Y方向的電壓,之后再完成電壓與坐標(biāo)的換算,整個(gè)過程類似一個(gè)電位器,觸摸不同的位置分得不同的電壓。
以上所需要的參考電壓、A/D轉(zhuǎn)換等工作由觸摸屏控制器ADS7843直接完成的,微處理器只需將相應(yīng)的控制命令傳輸?shù)紸DS7843即可,以獲得相應(yīng)電壓的數(shù)據(jù)。
ADS7843是TI公司生產(chǎn)的四線電阻觸摸屏轉(zhuǎn)換接口芯片。它是一款具有同步串行接口的12位取樣模數(shù)轉(zhuǎn)換器。在125kHz吞吐速率和2.7V電壓下,功耗為750LW.在關(guān)閉模式下,功耗僅為0.5LW.由于具有低功耗和高速等特性,被廣泛應(yīng)用在電池供電的小型手持設(shè)備上。
ADS7843與LPC2148的連結(jié)關(guān)系如圖3所示。ADS7843工作電壓+3.3V,轉(zhuǎn)換器的模擬輸入(X+、Y+、X-、Y-)是一個(gè)4通道多路器;DCLK(第4引腳)是外部時(shí)鐘輸入引腳;CS(第3引腳)是片選輸入端,低電平有效;DIN(第2引腳)是串行輸入,控制數(shù)據(jù)通過該引腳輸入;DOUT第16引腳)是串行數(shù)據(jù)輸出,用于輸出轉(zhuǎn)換后的觸摸位置數(shù)據(jù),最大數(shù)為二進(jìn)制的4095;PENIRQ(第15引腳)是PEN中斷,用于觸摸顯示屏后引發(fā)一個(gè)中斷。
2.2微處理器控制電路
原理如圖3所示。
圖3微處理器控制電路原理圖
(1)LPC2148微處理器
ARM處理器占有市場(chǎng)份額高,具有性能高、成本低、能耗省等特點(diǎn)。圖3中LPC2148(U3)是PHILIPS半導(dǎo)體公司推出的一個(gè)基于ARM7TDMI-S核、支持實(shí)時(shí)仿真和嵌入式跟蹤的32位嵌入式ARM7微處制器。該處理器內(nèi)置了寬范圍的串行通信接口、14通道10位ADC、1通道10位DAC、45個(gè)高速GPIO線以及多達(dá)9個(gè)邊沿或電平觸發(fā)的外部中斷管腳。處理器集成有40kB的片內(nèi)SRAM、512kB嵌入的高速Flash存儲(chǔ)器,128位寬度的存儲(chǔ)器接口和獨(dú)特的加速結(jié)構(gòu)使32位代碼能夠在最大時(shí)鐘速率下運(yùn)行,為通信網(wǎng)關(guān)、協(xié)議轉(zhuǎn)換器、軟件modem、語音識(shí)別、低端成像等應(yīng)用提供大規(guī)模的緩沖區(qū)和強(qiáng)大的處理功能,適合于彩色液晶的圖片處理和數(shù)據(jù)存儲(chǔ)。
(2)復(fù)位和晶振電路
LPC2148第57腳為復(fù)位信號(hào)輸入端,采用低電平復(fù)位,由C3、R9、R10、K1構(gòu)成的復(fù)位電路為系統(tǒng)提供上電復(fù)位和強(qiáng)制復(fù)位功能,K1為系統(tǒng)強(qiáng)制復(fù)位按鍵。晶振電路由X1(12MHz)、C7、C8構(gòu)成,支持微控制器芯片內(nèi)部PLL及ISP功能;X2(321768KHz)、C9、C10為RTC(實(shí)時(shí)時(shí)鐘)提供基準(zhǔn)時(shí)鐘。[!--empirenews.page--]
(3)資源分配
LPC2148的P0.8~P0.23作為16位數(shù)據(jù)線(D0~D15),經(jīng)JP1插座與液晶模塊的DB0~DB15連接;P0.0、P0.26、P0.28~P0.31作為液晶模塊的控制口線使用,經(jīng)JP1分別與液晶模塊的PWM、CS、RESET、RS、RD和WR連接;P0.27、P1.16~P1.20用于觸摸屏控制,通過JP1的連接分別接ADS7843的BUSY、7843-CS(CS)、DCLK、DIN、INT(PENIRQ)和DOUT引腳。
P1.26~P1.31作為JTAG功能使用,JP2為微處理器JTAG程序調(diào)試及下載端口。
P0.25作為蜂鳴器控制口線,蜂鳴器電路用于液晶觸摸或顯示時(shí)發(fā)出蜂鳴聲響,作為人機(jī)對(duì)話的輔助功能。蜂鳴器使用PNP三極管8550(Q2)進(jìn)行驅(qū)動(dòng),其放大倍數(shù)高(hFE=300),基級(jí)偏置電阻R8為1k,當(dāng)輸入低電平時(shí),Q1為深度飽和導(dǎo)通,可為蜂鳴器提供足夠的電流。
(4)電源電路
LPC2148為單電源供電,CPU操作電壓為3.0~3.6V。
電路采用+3.3V供電,外接+5V直流電源經(jīng)AMS1117(U4)穩(wěn)壓器穩(wěn)壓后,輸出+3.3V電壓,給液晶模塊和ADS7843供電。AMS1117的特點(diǎn)是輸出電流大(800mA),輸出電壓精度在1%以內(nèi),具有電流限制和熱保護(hù)功能,穩(wěn)定性好。C4、C5、C6均為電源濾波電容。
3軟件編程
3.1對(duì)液晶屏的C程序設(shè)計(jì)
液晶屏的軟件設(shè)計(jì)采用C語言編程。包括液晶屏初始化、寫液晶控制字、寫液晶數(shù)據(jù)子程序、讀液晶液晶數(shù)據(jù)、全屏顯示單色、指定位置顯示漢字和字符、指定位置顯示圖片、清屏等子程序。
寫液晶數(shù)據(jù)子程序?yàn)椋?/p>
3.2對(duì)觸摸屏的C程序設(shè)計(jì)
觸摸屏的程序設(shè)計(jì)主要是確定其位置坐標(biāo)與液晶屏上位置坐標(biāo)的對(duì)應(yīng)關(guān)系,通過一定的算法把觸摸屏觸摸信息轉(zhuǎn)化為液晶屏上的位置坐標(biāo)。液晶屏像素為240×320,從觸摸屏接收到的X值不在0~320范圍變化、Y值也不在0~240范圍變化,在觸摸屏的邊緣區(qū)域,X、Y方向輸出數(shù)據(jù)變化較大,是非線性關(guān)系,坐標(biāo)值在中間大部分范圍內(nèi)基本是成線性變化的。為了較準(zhǔn)確的進(jìn)行坐標(biāo)轉(zhuǎn)換,可采用線性求值和查表相結(jié)合的方式進(jìn)行坐標(biāo)轉(zhuǎn)換。
觸摸屏的C程序設(shè)計(jì)主要包括觸摸屏初始化子函數(shù)、讀A/D轉(zhuǎn)換值子函數(shù)、坐標(biāo)原始值子函數(shù)和坐標(biāo)轉(zhuǎn)換子函數(shù)。
與ADS7843相關(guān)的引腳C程序預(yù)處理為:
讀A/D轉(zhuǎn)換值子函數(shù):
4結(jié)束語
在嵌入式智能設(shè)備中,用液晶觸摸屏取代傳統(tǒng)的按鍵、LED等人機(jī)對(duì)話部件,具有操作簡(jiǎn)便、界面友好及功能較強(qiáng)等優(yōu)點(diǎn)。隨著LCD液晶屏價(jià)格的進(jìn)一步下降,液晶觸摸屏有著更寬廣的應(yīng)用市場(chǎng),基于ARM微處理器與液晶觸摸屏的技術(shù)開發(fā)具有現(xiàn)實(shí)意義和社會(huì)經(jīng)濟(jì)價(jià)值。本系統(tǒng)以ARM7處理器LPC2148作為主控制器,與傳統(tǒng)單片機(jī)相比,具有較大的數(shù)據(jù)存儲(chǔ)容量和較快的圖片處理速度;液晶屏帶觸摸功能,大大增強(qiáng)了人機(jī)對(duì)話的交互能力;基于C語言的編程方法有較強(qiáng)的實(shí)時(shí)性。所設(shè)計(jì)的液晶觸摸屏應(yīng)用于ARM嵌入式創(chuàng)新實(shí)訓(xùn)系統(tǒng)和便攜式鐵路平調(diào)裝置故障檢測(cè)儀,觸摸鍵反應(yīng)靈敏,與ARM7處理器接口電路運(yùn)行可靠,驗(yàn)證了系統(tǒng)設(shè)計(jì)的可行性,具有較高的實(shí)際應(yīng)用價(jià)值。