小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

觸摸屏校準(zhǔn)

 敗敗0619 2013-03-14
1   電阻型觸摸屏基本原理

電阻型觸摸屏又稱(chēng)為電阻壓力型觸摸屏,它主要利用壓力感應(yīng)進(jìn)行工作。對(duì)于點(diǎn)陣式觸摸屏,為了提高人機(jī)交互的友好性,常在 顯示屏上粘上一層透明的薄膜體,用于檢測(cè)屏幕觸摸輸入信號(hào),形成觸摸屏。圖1所示是一個(gè)電阻型觸摸屏的橫截面,其結(jié)構(gòu)十分簡(jiǎn)單,由上下相對(duì)放置的兩片玻璃 構(gòu)成,玻璃的內(nèi)表面涂上薄薄一層導(dǎo)電材料,并用一些小玻璃珠將導(dǎo)電表面隔開(kāi)。當(dāng)手指或觸摸筆按壓玻璃表面時(shí),上層玻璃產(chǎn)生彎曲接觸下層玻璃。這種結(jié)構(gòu)中玻 璃珠間的距離決定了觸摸屏的敏感度,通常這些玻璃非常小 ( 一般小于0.0 01 I mch) 。玻璃珠互相放置得越近,敏感度越小,壓力就要越大,才能使兩層玻璃片可靠接觸。當(dāng)手指接觸屏幕,兩導(dǎo)電層會(huì)出現(xiàn)一個(gè)接觸點(diǎn),因其中一面導(dǎo)電層接通Y軸方 向的5 V均勻電壓場(chǎng),使得偵測(cè)層的電壓由零變?yōu)榉橇?,控制器偵測(cè)到這個(gè)接通后,通過(guò)一個(gè)觸摸屏控制器( A D轉(zhuǎn)換器) 將電源的正、負(fù)極加到一塊玻璃的導(dǎo)電層兩端,并將得到的電壓值與5 V相比,即可得觸摸點(diǎn)的Y軸坐標(biāo),同理得出X軸的坐標(biāo),這就是電阻式技術(shù)觸摸屏共同的最基本原理。由于存在機(jī)械誤差和放大因素存在的誤差,在觸摸屏上所繪 制的圖形和液晶屏上的圖形,對(duì)應(yīng)點(diǎn)的集合會(huì)有所偏差。在觸摸屏上點(diǎn)擊某一按鈕或選擇某項(xiàng)功能時(shí),內(nèi)置的軟件便無(wú)法對(duì)觸摸屏上的點(diǎn)擊做出正確響應(yīng),而觸摸屏 具有離散性,任兩個(gè)觸摸屏點(diǎn)密度都不能完全一致,所以幾乎所有帶阻性觸摸屏的設(shè)備在出廠(chǎng)前均要經(jīng)過(guò)一定的校準(zhǔn)。校準(zhǔn)是一種圖形重建的過(guò)程,即將圖片要經(jīng)過(guò) 變換,換算出與液晶屏相一致的點(diǎn)集合。
校準(zhǔn)方式有兩點(diǎn)校準(zhǔn)、三點(diǎn)校準(zhǔn)、四點(diǎn)校準(zhǔn)法等。其中校準(zhǔn)點(diǎn)數(shù)越多,觸摸屏數(shù)據(jù)越精確。

  
2 觸摸屏校準(zhǔn)算法分析

下面將主要以?xún)牲c(diǎn)和三點(diǎn)校準(zhǔn)法來(lái)分析觸摸屏的校準(zhǔn)算法 。  
2 .1 兩點(diǎn)校準(zhǔn)法 
兩點(diǎn)校準(zhǔn)法即為取觸摸屏中左上角和右下角這兩個(gè)點(diǎn)來(lái)校準(zhǔn)觸摸屏。大多數(shù)的校準(zhǔn)都采取是兩點(diǎn)校準(zhǔn)法,現(xiàn)將兩種常用的兩點(diǎn)校準(zhǔn)法做分析和比較。

2 .1.1第一種兩點(diǎn)校準(zhǔn)法

1) 先觸摸并獲取觸摸屏左上角的坐標(biāo)( lefttopx, lefttopy )。  
2) 再觸摸并獲取觸摸屏右下角的坐標(biāo)( rightbottomx, rightbottomy )。  
3) 計(jì)算水平方向的比率( ratiox) 和垂直方向的比率( ratioy ) ,注意這里的ratiox, ratioy是浮點(diǎn)數(shù):  
r a t i o x = ( r i g h t b o t t o mx - l e f t t o p x ) / ( 觸摸屏的寬度) ;  
r a t i o y = ( r i g h t b o t t o my - l e f t t o p y ) / ( 觸摸屏的高度) ;                                                                   4 )假設(shè)液晶屏中的當(dāng)前點(diǎn)的液晶屏坐標(biāo)( X, Y ) :  
當(dāng)前點(diǎn)的觸摸屏的X坐標(biāo) = X   r a t i o x+ l e f t t o p x;  
當(dāng)前點(diǎn)的觸摸屏的Y坐標(biāo) = Y   r a t i o y+ l e f t t o p y;

2.1.2 第二種兩點(diǎn)校準(zhǔn)法

在觸摸屏的左上角和右下角分別顯示兩個(gè)校 準(zhǔn)圖標(biāo)( 長(zhǎng)為2 0的十字光標(biāo)) ,十字光標(biāo)的交叉點(diǎn)即為校準(zhǔn)點(diǎn)。這樣可以固定好觸摸屏上要校準(zhǔn)的點(diǎn),可以更加精確的校準(zhǔn),并且這里利用另一校準(zhǔn)算法來(lái)實(shí)現(xiàn)。該算法實(shí)現(xiàn)為程序第一 次啟動(dòng)時(shí)將會(huì)進(jìn)入校準(zhǔn)模式,出現(xiàn)左上角的十字光標(biāo),請(qǐng)用戶(hù)觸摸十字交叉的中心,如果觸摸點(diǎn)明顯偏離十字叉 的中心,那么程序會(huì)要求重新校準(zhǔn)。 

1 ) 首先在觸摸屏左上角顯示一長(zhǎng)為2 0的十字光標(biāo),顏色為黑色。  
2) 觸摸十字光標(biāo)中心的交點(diǎn),由于存在機(jī)械上的誤差,在觸摸十字中心時(shí),附近的電壓也會(huì)產(chǎn)生變化,這樣在觸摸屏上可能會(huì)取到很多個(gè)點(diǎn),所以這里取觸摸屏上得到的前1 6個(gè)點(diǎn),分別求X軸、Y軸的坐標(biāo)和s u mx、s u my 。  
3) 將寄存器中所求的和s u mx、s u my分別右移4位,由于寄存器中的數(shù)為二進(jìn)制數(shù),所以右移4位即為除以1 6,可求得1 6個(gè)點(diǎn)坐標(biāo)的平均值( 在此不可直接除以1 6求值 ) :

er r x =s u m x >>4  
er r y =s umy >>4 

4) 用所得的兩個(gè)平均值,與觸摸屏所提供的經(jīng)驗(yàn)值比較,若在經(jīng)驗(yàn)值的范圍內(nèi) 則該值為合法的,將該值存入E2 ROM 內(nèi),這兩個(gè)點(diǎn)即被稱(chēng)為基準(zhǔn)點(diǎn),輸入的點(diǎn)就通過(guò)基準(zhǔn)點(diǎn)進(jìn)行校準(zhǔn)。

  
2.2三點(diǎn)校準(zhǔn)法 
三點(diǎn)校準(zhǔn)法較之前面介紹的二點(diǎn)校準(zhǔn)法更為精確。當(dāng)觸摸屏與液晶屏間的角度差很小時(shí),經(jīng)過(guò)推理可以假設(shè)觸摸屏與液晶顯示器各點(diǎn)之間的對(duì)應(yīng)關(guān)系為( 設(shè)液晶顯示器的坐標(biāo)為( XL,YL ) ,觸摸屏的坐標(biāo)為( ×,Y) ) :

XL = AX+BY+C 
YL = DX+EY+F

因?yàn)橐∪齻€(gè)點(diǎn)進(jìn)行校準(zhǔn),所以存在六個(gè)變量,即要通過(guò)六個(gè)方程式求出液晶顯示器的坐標(biāo)。此處要求三個(gè)點(diǎn)盡量分散,最好為左上角、中間、右下角三點(diǎn)。得 :

XL1 = AX1+BY1+C

XL2 = AX2+BY2+C

XL3 = AX3+BY3+C

YL1 = DX1+EY1+F

YL2 = DX2+EY2+F

YL3 = DX3+EY3+F

可求 出 A、B、C、D、E、F的值,一旦這些參數(shù)值定下來(lái),便可利用上面的方程組,通過(guò)觸摸屏上的原始數(shù)據(jù)計(jì)算出它在LCD顯示器上的對(duì)應(yīng)點(diǎn)。

上述聯(lián)立方程組的未知量已求解出,此處不再推導(dǎo)。這里直接跳過(guò)中間步驟得出最后結(jié)論,將K作為各方程式的公 分母,便可得出未知量 :

K = (X - X3) (Y2  - Y3) - (X2 - X3) (Y - Y3)  
A = (( X L l - X L 3)(Y 2 - Y3) - (X L2 - XL3)(Y1 - Y 3)) /K  
B = (( X1 - X 3 )( XL2 - X L3) - (X L1 - XL3)( X2 - X 3)) /K  
C = (Y(( X3XL2  - X2XL3) + Y2(XlXL3 - X3XL1) + Y3(X2XL1 一 X1XL2)) / K  
D = ((YL1 - YL3)(Y2 - Y3) - (YL2  - YL3)(Y1 - Y3)) /K  
E = ((X1 - X3)(YL2  - YL3) - (YLl - YL3)(X2 - X 3)) / K  
F = (Yl (X3YL2 - X2YL3) + Y2 (X1YL3 - X3YL1) + Y3(X2YL1 - X1YL2)) / K

基于此,通過(guò)三個(gè)校準(zhǔn)點(diǎn)便可確定觸摸屏與液晶屏的對(duì)應(yīng)關(guān)系,進(jìn)行校準(zhǔn)。

  
3 觸摸屏的校準(zhǔn)舉例

假設(shè)液晶屏( 320 x 240 ) 中有一個(gè)實(shí)心矩形作為按鈕,此實(shí)心矩形的左上角坐標(biāo)是( X1,Y1 ); 右下角的坐標(biāo)是( X2,Y2 ) 。要校準(zhǔn)此觸摸屏, 則須按照下面的4個(gè)步驟 :  
1 ) 先測(cè)試觸摸屏左上角的坐標(biāo)( lefttopx, lefttopy )。  
2 ) 再測(cè)試觸摸屏右下角的坐標(biāo)( rightbottomx, rightbottomy )。  
3 ) 計(jì)算水平方向的比率( ratiox ) 和垂直方向的比率( ratioy ) :  
ratiox = ( rightbottomx - lefttopx ) / 320;  
ratioy = (rightbottomy - lefttopy ) / 240;  
4 ) 計(jì)算觸摸屏中此按鈕的左上角坐標(biāo)(buttonx1, buttony1)和右下角坐標(biāo)( buttonx2 ,buttony2 ) :  
buttonx1 = X1 * ratiox + lefttopx;  
buttony1 = Y1 * ratioy + lefttopy;  
buttonx2 = X2 * ratiox + lefttopx;
buttony2 = Y2 * ratioy + lefttopy;  
5 ) 在機(jī)器程序中判斷從串口接收的觸摸屏的坐標(biāo)數(shù)據(jù)是否在上一步計(jì)算出的觸摸屏按鈕坐標(biāo)的范圍內(nèi)。 由于三點(diǎn)校準(zhǔn)具體的實(shí)現(xiàn)就是將取得的點(diǎn)代入公式即可,這里不在重復(fù)敘述 。

4 結(jié)束語(yǔ)

每個(gè)觸摸屏在使用之前,都要進(jìn)行校準(zhǔn);用戶(hù)必須將獲取的左上角和右下角坐標(biāo)保存到用戶(hù)自己的FLASH或者其它掉電時(shí)不會(huì)丟失的器件中,便于使用過(guò)程中校正讀取的觸摸屏數(shù)據(jù)如果此信息丟失,必須重新進(jìn)行校準(zhǔn),重新將左上角和右下角坐標(biāo)保存。  
本文介紹的三點(diǎn)校準(zhǔn)算法是這三種校準(zhǔn)算法中最優(yōu)的,此算法首先確定誤差源, 然后通過(guò)三個(gè)選定點(diǎn)導(dǎo)出觸摸屏的校準(zhǔn)矩陣,并用軟件方法來(lái)實(shí)施點(diǎn)與點(diǎn)之間對(duì)應(yīng)關(guān)系的校準(zhǔn)。掌握這種技術(shù),對(duì)降低嵌入式系統(tǒng)的成本至關(guān)重要。 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多