觸摸屏具有堅(jiān)固耐用、反應(yīng)速度快、節(jié)省空間、易于交流等許多優(yōu)點(diǎn),相比鍵盤輸入,觸摸屏技術(shù)更簡單、直觀、快捷,且具有豐富多彩的表現(xiàn)能力。設(shè)計(jì)觸摸屏?xí)r,最重要的問題是準(zhǔn)確定位觸摸點(diǎn)的坐標(biāo)位置,本文詳細(xì)介紹了利用工業(yè)級芯片LPC2478與ADS7843設(shè)計(jì)四線電阻觸摸屏的實(shí)際方案。
1 硬件設(shè)計(jì)
1.1 硬件選擇
LPC2478芯片內(nèi)部集成了LCD接口,它的工作范圍為-40~+80℃,其寬溫的特點(diǎn)特別適合工業(yè)領(lǐng)域。ADS7843芯片是一款專為觸摸采樣設(shè)計(jì)的芯片,12位可編程精度。外部參考電壓范圍從1 V~Vcc均可,Vcc最高電壓為5 V,高速低功耗使得ADS7843非常適用于電阻觸摸屏的手持設(shè)備。
1.2 硬件電路
筆者設(shè)計(jì)了ADS7843的硬件接口電路(如圖1所示)。該電路中采取了利用LPC2478的GPIO管腳模擬SPI時(shí)序的方式,將DCLK,CS,DIN,BUS-Y,DOUT接到LPC2478的5個(gè)GPIO引腳上。將ADS7843的引腳接到LPC2478的中斷1上的方式。采用的四線電阻觸摸屏,分別接到ADS7843的X+,Y+,X-,Y-引腳上。
1.3 采集方式
ADS7843有2種參考電壓模式:單端模式和差分模式。在單端模式中,參考輸入電壓選取的是Vcc和GND。由于內(nèi)部的開關(guān)電阻壓降影響轉(zhuǎn)換結(jié)果帶來誤差,所以轉(zhuǎn)換器內(nèi)部的低阻開關(guān)對轉(zhuǎn)換精度有一定影響。差分模式參考輸入由未選中的輸入通道Y+,Y-,X+,X-提供參考電源和地。不管內(nèi)部開關(guān)電阻如何變化,其轉(zhuǎn)換結(jié)果總與觸摸屏的電阻成比例,克服了內(nèi)部開關(guān)電阻的影響,但當(dāng)轉(zhuǎn)換頻率很高時(shí)則增加了功耗,需要考慮低功耗設(shè)計(jì)。筆者基于采樣精度的原因在程序中采用了差分方式。
ADS7843的引腳是一個(gè)PIN中斷引腳,在觸摸顯示屏?xí)r可產(chǎn)生一個(gè)低電平,觸發(fā)LPC2478的中斷,采用下降沿觸發(fā)的方式。一次點(diǎn)擊觸摸屏的過程捕獲圖2的電平變化過程。對于采用中斷方式采集電平變化不是很適合,同時(shí)無法捕獲觸摸屏上的滑動(dòng)過程,所以筆者使用了循環(huán)采集方式。
循環(huán)采集方式:主要是通過LPC2478定時(shí)采集ADS7843的方式,在筆者的程序中定時(shí)器的時(shí)間間隔設(shè)置為50 ms。該方式由于加大了CPU的負(fù)荷,所以不太適合速度較慢的MCS51單片機(jī),但比較適合LPC2478的處理器。每次采集的數(shù)據(jù)要與上次數(shù)據(jù)進(jìn)行對比,以判斷是否為新的數(shù)據(jù)。
研究中主要利用LPC2478與ADS7843進(jìn)行顯示和外部輸入,無其他大量計(jì)算,也不對設(shè)備進(jìn)行實(shí)時(shí)控制。所以比較中斷方式與循環(huán)方式的優(yōu)缺點(diǎn),主要為了對一些屏幕上滑動(dòng)動(dòng)作可以較好進(jìn)行響應(yīng),最后采用了循環(huán)采集方式。
1.4 ADS7843采集流程
采用12位差分模式的采集方式,程序中的控制字分別為0xg0(x坐標(biāo))和0xD0(y坐標(biāo))。根據(jù)ADS7843的時(shí)序圖,筆者采集程序的工作流程:經(jīng)過8個(gè)時(shí)鐘周期發(fā)送完畢控制字后,在DCLK的下降沿連續(xù)讀取12次,從而讀取觸摸屏上的AD采樣數(shù)值。由于筆者采用的循環(huán)采集方式,采集進(jìn)來的數(shù)據(jù)不一定是經(jīng)過人對屏的觸摸產(chǎn)生的數(shù)據(jù)。在筆者使用系統(tǒng)中,LPC2478液晶屏采用的是夏普LQ043T3DX02 LCD屏,采集到數(shù)據(jù)如果x軸數(shù)據(jù)為4 095(y軸數(shù)據(jù)采集到數(shù)據(jù)多數(shù)為O,但有的時(shí)間可能不為0)。說明采集到數(shù)據(jù)時(shí)并沒有人觸摸屏幕,該數(shù)據(jù)可以直接丟棄。
在實(shí)際中不僅僅關(guān)心ADS7843對當(dāng)前觸摸點(diǎn)電壓值A(chǔ)/D轉(zhuǎn)換值,更關(guān)心觸摸點(diǎn)與LCD坐標(biāo)的關(guān)系??赏ㄟ^下列轉(zhuǎn)換公式進(jìn)行轉(zhuǎn)換:
式中:x,y為LCD坐標(biāo)中的坐標(biāo);xAD,yAD為ADS7843采集到AD值;Tchscr_XMax,Tchscr_XMin,Tchscr_YMax,TchScr_YMin為觸摸屏返回x,y坐標(biāo)的范圍。
2 結(jié)語
本文介紹的利用芯片LPC2478與ADS7843設(shè)計(jì)四線電阻觸摸屏的實(shí)際方案實(shí)現(xiàn)了具體功能。實(shí)際應(yīng)用表明,采用LPC2478設(shè)計(jì)的觸摸屏具有較強(qiáng)的可靠性以及環(huán)境適應(yīng)性。