摘 要:采用LPC2478和ADS7843設計出的工業觸摸屏是一種良好的工業現場人機交互方案。較全面介紹電路設計,針對工業現場的干擾誤采樣特點設計了循環濾波方式。較好地解決了一般觸摸屏穩定性差,靈敏度不高的缺點,具有抗干擾、穩定性高、適用溫度范圍寬的特點,滿足工業現場控制系統的要求,并在實踐應用中取得了良好效果。
關鍵詞:LPC2478; ADS7843; 觸摸屏; 四線電阻
中圖分類號:TN40; TP271 文獻標識碼:A
文章編號:1004-373X(2010)14-0173-02
Design of LPC2478 and ADS7843-based Industrial Touch Screen
ZHANG Yan-ni
(Dalian Medical University, Dalian 116044, China)
Abstract: The industrial touch screen designed by the aid of LPC2478 and ADS7843 is a nice human-computer interaction program for the industrial field. The circuit design is introduced comprehensively. The loop filtering method was designed to avoid the sampling error of the industrial field. The disadvantages of poor stability and low sensitivity existing in the general touch-screen were overcome by the method, which has the characteristics of anti-interference, high stability and wide operating temperature range, can meet the requirements of industrial field control systems, and has achieved good results in practical application.
Keywords: LPC2478; Ads7843; touch screen; four-wire resistance
觸摸屏具有堅固耐用、反應速度快、節省空間、易于交流等許多優點,相比鍵盤輸入,觸摸屏技術更簡單、直觀、快捷,且具有豐富多彩的表現能力[1]。設計觸摸屏時,最重要的問題是準確定位觸摸點的坐標位置[2-3],本文詳細介紹了利用工業級芯片LPC2478與ADS7843設計四線電阻觸摸屏的實際方案。
1 硬件設計
1.1 硬件選擇
LPC2478芯片內部集成了LCD接口,它的工作范圍為-40~+80 ℃,其寬溫的特點特別適合工業領域[4]。ADS7843芯片是一款專為觸摸采樣設計的芯片,12位可編程精度。外部參考電壓范圍從1 V~VCC均可,VCC最高電壓為5 V[5-6],高速低功耗使得ADS7843非常適用于電阻觸摸屏的手持設備。
1.2 硬件電路
筆者設計了ADS7843的硬件接口電路(如圖1所示)。該電路中采取了利用LPC2478的GPIO管腳模擬SPI時序的方式,將DCLK,CS,DIN,BUSY,DOUT接到LPC2478的5個GPIO引腳上。將ADS7843的PENIRQ 引腳接到LPC2478的中斷1上的方式。 采用的四線電阻觸摸屏,分別接到ADS7843的X+,Y+,X-,Y-引腳上 [7]。
圖1 ADS7843的硬件接口電路
1.3 采集方式
ADS7843有2種參考電壓模式[8]:單端模式和差分模式。在單端模式中,參考輸入電壓選取的是VCC 和GND[8-9] 。由于內部的開關電阻壓降影響轉換結果帶來誤差,所以轉換器內部的低阻開關對轉換精度有一定影響。差分模式參考輸入由未選中的輸入通道Y+,Y-,X+,X-提供參考電源和地。不管內部開關電阻如何變化,其轉換結果總與觸摸屏的電阻成比例[9],克服了內部開關電阻的影響,但當轉換頻率很高時則增加了功耗,需要考慮低功耗設計。筆者基于采樣精度的原因在程序中采用了差分方式。
ADS7843的引腳PENIRQ 是一個PIN中斷引腳,在觸摸顯示屏時可產生一個低電平 [10],觸發LPC2478的中斷,采用下降沿觸發的方式。
一次點擊觸摸屏的過程捕獲圖2的電平變化過程。對于采用中斷方式采集電平變化不是很適合,同時無法捕獲觸摸屏上的滑動過程,所以筆者使用了循環采集方式。
圖2 ADS7843的PENIRQ 引腳的實際電平變化
循環采集方式:主要是通過LPC2478定時采集ADS7843的方式,在筆者的程序中定時器的時間間隔設置為50 ms。該方式由于加大了CPU的負荷,所以不太適合速度較慢的 MCS51單片機,但比較適合LPC2478的處理器。每次采集的數據要與上次數據進行對比,以判斷是否為新的數據。
研究中主要利用LPC2478與ADS7843進行顯示和外部輸入,無其他大量計算,也不對設備進行實時控制。所以比較中斷方式與循環方式的優缺點,主要為了對一些屏幕上滑動動作可以較好進行響應,最后采用了循環采集方式。
1.4 ADS7843采集流程
采用12位差分模式的采集方式,程序中的控制字分別為0x90 (x坐標)和0xD0 (y坐標)。根據ADS7843的時序圖,筆者采集程序的工作流程:經過8個時鐘周期發送完畢控制字后,在DCLK的下降沿連續讀取12次,從而讀取觸摸屏上的AD采樣數值。由于筆者采用的循環采集方式,采集進來的數據不一定是經過人對屏的觸摸產生的數據。在筆者使用系統中,LPC2478液晶屏采用的是夏普LQ043T3DX02 LCD屏,采集到數據如果x軸數據為4 095(y軸數據采集到數據多數為0,但有的時間可能不為0)。說明采集到數據時并沒有人觸摸屏幕,該數據可以直接丟棄。
在實際中不僅僅關心ADS7843對當前觸摸點電壓值A/D轉換值,更關心觸摸點與LCD坐標的關系。可通過下列轉換公式進行轉換:
x=(xAD-TchScr_XMin )/(TchScr_XMax-TchScr_XMin)
y=(yAD-TchScr_YMin )/(TchScr_YMax - TchScr_YMin)
式中:x,y為LCD坐標中的坐標;xAD,yAD為ADS7843采集到AD值;TchScr_XMax,TchScr_XMin,TchScr_YMax,TchScr_YMin為觸摸屏返回x,y坐標的范圍。
2 結 語
本文介紹的利用芯片LPC2478與ADS7843設計四線電阻觸摸屏的實際方案實現了具體功能。實際應用表明,采用LPC2478設計的觸摸屏具有較強的可靠性以及環境適應性。
參考文獻
[1]翟霄翔,郝久玉,鄭軍.電阻式觸摸屏在嵌入式系統中的應用[J].電子測量技術,2006,29(2):36-37,71.
[2]黃海萍,郭振軍,黃廷磊.四線電阻式觸摸屏控制器的應用研究[J].儀表技術,2007(11):45-46,50.
[3]吳凌燕,蘇建元,吳天靜.觸摸屏按鍵處理方法研究[J].儀器儀表,2008(10):21-23.
[4]李宏,岳清濤,江琳.基于觸摸屏和PLC的數字觸發式整流電源設計[J].電力電子技術,2009,43(5):68-70.
[5]楊亮,譚南林,蘇樹強,等.基于ARM7嵌入式觸摸屏設計[J].國外電子測量技術,2006,25(8):17-19.
[6]王全良,韓潤萍.基于LPC2468的液晶顯示應用與實現[J].微計算機信息,2009,25(10):34-35.
[7]韓康瑋,蔡錦達,盛曉笑.基于PHILIPS LPC2136的觸摸屏顯示系統設計[J].工業控制計算機,2007,20(7):66-68.
[8]顧榮榮.基于LPC2138控制的LCD及觸摸屏接口設計[J].科技信息,2008(18):83-84.
[9]程軍,成建波.基于LPC2210的觸摸屏驅動研究[J].現代顯示,2007(4):33-35.
[10]王敏,金新民,童亦斌.基于ARM微處理器LPC2292的觸摸屏顯示系統設計[J].電子元器件應用,2005,7(10):57-59.