很多LCD模塊都采用了電阻式觸摸屏,這些觸摸屏等效于將物理位置轉換為代表X、Y坐標的電壓值的傳感器。通常有4線、5線、7線和8線觸摸屏來實現,本文詳細介紹了SAR結構、四種觸摸屏的組成結構和實現原理,以及檢測觸摸的方法。
電阻式觸摸屏是一種傳感器,它將矩形區域中觸摸點(X,Y)的物理位置轉換為代表X坐標和Y坐標的電壓。很多LCD模塊都采用了電阻式觸摸屏,這種屏幕可以用四線、五線、七線或八線來產生屏幕偏置電壓,同時讀回觸摸點的電壓。
過去,為了將電阻式觸摸屏上的觸摸點坐標讀入微控制器,需要使用一個專用的觸摸屏控制器芯片,或者利用一個復雜的外部開關網絡來連接微控制器的片上模數轉換器(ADC)。夏普公司的LH75400/01/10/11系列和LH7A404等微控制器都帶有一個內含觸摸屏偏置電路的片上ADC,該ADC采用了一種逐次逼近寄存器(SAR)類型的轉換器。采用這些控制器可以實現在觸摸屏傳感器和微控制器之間進行直接接口,無需CPU介入的情況下控制所有的觸摸屏偏置電壓,并記錄全部測量結果。本文將詳細介紹四線、五線、七線和八線觸摸屏的結構和實現原理。
SAR結構
SAR的實現方法很多,但它的基本結構很簡單,參見圖1。該結構將模擬輸入電壓(VIN)保存在一個跟蹤/保持器中,N位寄存器被設置為中間值(即100...0,其中最高位被設置為1),以執行二進制查找算法。因此,數模轉換器(DAC)的輸出(VDAC)為VREF的二分之一,這里VREF為ADC的參考電壓。之后,再執行一個比較操作,以決定VIN小于還是大于VDAC:
1. 如果VIN小于VDAC,比較器輸出邏輯低,N位寄存器的最高位清0。
2. 如果VIN大于VDAC,比較器輸出邏輯高(或1),N位寄存器的最高位保持為1。
其后,SAR的控制邏輯移動到下一位,將該位強制置為高,再執行下一次比較。SAR控制邏輯將重復上述順序操作,直到最后一位。當轉換完成時,寄存器中就得到了一個N位數據字。
圖2顯示了一個4位轉換過程的例子,圖中Y軸和粗線表示DAC的輸出電壓。在本例中:
1. 第一次比較顯示VIN小于VDAC,因此位[3]被置0。隨后DAC被設置為0b0100并執行第二次比較。
2. 在第二次比較中,VIN大于VDAC,因此位[2]保持為1。隨后,DAC被設置為0b0110并執行第三次比較。
3. 在第三次比較中,位[1]被置0。DAC隨后被設置為0b0101,并執行最后一次比較。
4. 在最后一次比較中,由于VIN大于VDAC,位[0]保持為1。
觸摸屏原理
觸摸屏包含上下疊合的兩個透明層,四線和八線觸摸屏由兩層具有相同表面電阻的透明阻性材料組成,五線和七線觸摸屏由一個阻性層和一個導電層組成,通常還要用一種彈性材料來將兩層隔開。當觸摸屏表面受到的壓力(如通過筆尖或手指進行按壓)足夠大時,頂層與底層之間會產生接觸。所有的電阻式觸摸屏都采用分壓器原理來產生代表X坐標和Y坐標的電壓。如圖3所示,分壓器是通過將兩個電阻進行串聯來實現的。上面的電阻(R1)連接正參考電壓(VREF),下面的電阻(R2)接地。兩個電阻連接點處的電壓測量值與下面那個電阻的阻值成正比。
為了在電阻式觸摸屏上的特定方向測量一個坐標,需要對一個阻性層進行偏置:將它的一邊接VREF,另一邊接地。同時,將未偏置的那一層連接到一個ADC的高阻抗輸入端。當觸摸屏上的壓力足夠大,使兩層之間發生接觸時,電阻性表面被分隔為兩個電阻。它們的阻值與觸摸點到偏置邊緣的距離成正比。觸摸點與接地邊之間的電阻相當于分壓器中下面的那個電阻。因此,在未偏置層上測得的電壓與觸摸點到接地邊之間的距離成正比。
四線觸摸屏
四線觸摸屏包含兩個阻性層。其中一層在屏幕的左右邊緣各有一條垂直總線,另一層在屏幕的底部和頂部各有一條水平總線,見圖4。為了在X軸方向進行測量,將左側總線偏置為0V,右側總線偏置為VREF。將頂部或底部總線連接到ADC,當頂層和底層相接觸時即可作一次測量。
為了在Y軸方向進行測量,將頂部總線偏置為VREF,底部總線偏置為0V。將ADC輸入端接左側總線或右側總線,當頂層與底層相接觸時即可對電壓進行測量。圖5顯示了四線觸摸屏在兩層相接觸時的簡化模型。對于四線觸摸屏,最理想的連接方法是將偏置為VREF的總線接ADC的正參考輸入端,并將設置為0V的總線接ADC的負參考輸入端。
五線觸摸屏
五線觸摸屏使用了一個阻性層和一個導電層。導電層有一個觸點,通常在其一側的邊緣。阻性層的四個角上各有一個觸點。為了在X軸方向進行測量,將左上角和左下角偏置到VREF,右上角和右下角接地。由于左、右角為同一電壓,其效果與連接左右側的總線差不多,類似于四線觸摸屏中采用的方法。
為了沿Y軸方向進行測量,將左上角和右上角偏置為VREF,左下角和右下角偏置為0V。由于上、下角分別為同一電壓,其效果與連接頂部和底部邊緣的總線大致相同,類似于在四線觸摸屏中采用的方法。這種測量算法的優點在于它使左上角和右下角的電壓保持不變;但如果采用柵格坐標,X軸和Y軸需要反向。對于五線觸摸屏,最佳的連接方法是將左上角(偏置為VREF)接ADC的正參考輸入端,將左下角(偏置為0V)接ADC的負參考輸入端。
七線觸摸屏
七線觸摸屏的實現方法除了在左上角和右下角各增加一根線之外,與五線觸摸屏相同。執行屏幕測量時,將左上角的一根線連到VREF,另一根線接SAR ADC的正參考端。同時,右下角的一根線接0V,另一根線連接SAR ADC的負參考端。導電層仍用來測量分壓器的電壓。
八線觸摸屏
除了在每條總線上各增加一根線之外,八線觸摸屏的實現方法與四線觸摸屏相同。對于VREF總線,將一根線用來連接VREF,另一根線作為SAR ADC的數模轉換器的正參考輸入。對于0V總線,將一根線用來連接0V,另一根線作為SAR ADC的數模轉換器的負參考輸入。未偏置層上的四根線中,任何一根都可用來測量分壓器的電壓。
檢測有無接觸
所有的觸摸屏都能檢測到是否有觸摸發生,其方法是用一個弱上拉電阻將其中一層上拉,而用一個強下拉電阻來將另一層下拉。如果上拉層的測量電壓大于某個邏輯閾值,就表明沒有觸摸,反之則有觸摸。這種方法存在的問題在于觸摸屏是一個巨大的電容器,此外還可能需要增加觸摸屏引線的電容,以便濾除LCD引入的噪聲。弱上拉電阻與大電容器相連會使上升時間變長,可能導致檢測到虛假的觸摸。
四線和八線觸摸屏可以測量出接觸電阻,即圖5中的RTOUCH。RTOUCH與觸摸壓力近似成正比。要測量觸摸壓力,需要知道觸摸屏中一層或兩層的電阻。圖6中的公式給出了計算方法。需要注意的是,如果Z1的測量值接近或等于0(在測量過程中當觸摸點靠近接地的X總線時),計算將出現一些問題,通過采用弱上拉方法可以有效改善這個問題。