嵌入式Linux框架下的的智能儀器觸摸屏接口設計過程詳解_第1頁
嵌入式Linux框架下的的智能儀器觸摸屏接口設計過程詳解_第2頁
嵌入式Linux框架下的的智能儀器觸摸屏接口設計過程詳解_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

【W(wǎng)ord版本下載可任意編輯】嵌入式Linux框架下的的智能儀器觸摸屏接口設計過程詳解}

應用程序調(diào)用read()函數(shù)時,進入驅動的ads7843_ts_read()接口函數(shù)。在該接口函數(shù)中獲取采樣結果,判斷是否要對坐標開展校準,將終結果寫入到緩沖區(qū)中,并通過copy_to_user()函數(shù)將其從內(nèi)核空間復制到用戶空間,以使應用程序能夠使用。在ads7843_ts_read()函數(shù)中采用了非阻塞型操作,使得在沒有數(shù)據(jù)到達的時候立即返回,然后用異步觸發(fā)fasync()來通知數(shù)據(jù)的到來。ads7843_ts_poll()函數(shù)用于驅動程序的非阻塞操作,ads7843_ts_fasync()函數(shù)用于驅動異步觸發(fā)。ads7843_ts_ioctl()函數(shù)中,提供了可從用戶態(tài)控制的參數(shù),如觸摸屏是否在驅動中校準、屏幕的坐標值等。ads7843_ts_release()函數(shù)用來關閉觸摸屏設備。

2.2觸摸屏的校準

在儀器開發(fā)過程中,觸摸屏作為輸入設備與LCD配合使用。為了能使從觸摸屏采樣得到坐標與屏幕的顯示坐標對應,還需要做一個映射,也就是要對觸摸屏開展校準。如圖4所示,所用的觸摸屏和液晶屏都是標準的矩形,只要安裝合理,可以認為觸摸屏的X方向坐標只與顯示屏X方向相關,Y方向坐標只與顯示屏的Y方向相關。假設顯示屏的分辨率是W×H,顯示區(qū)域的左上角對應的觸摸屏采樣坐標是(x1,y1),右下角對應的坐標是(x2,y2),那么觸摸屏上任意一點采樣坐標(x,y)與顯示屏坐標(xd,yd)的對應關系可以按照如下公式計算:

這樣,在測得(x1,y1)和(x2,y2)點觸摸屏的采樣值后,利用上述公式編制校準函數(shù),在觸摸屏工作的過程中,計算出實際觸摸點對應的顯示坐標,完成觸摸屏的校準。

3觸摸屏用戶應用程序

創(chuàng)立的Linux設備文件系統(tǒng)觸摸屏節(jié)點為/dev/ts.在應用程序中,可以像打開文件一樣用open函數(shù)打開設備文件,然后用read()函數(shù)讀取由驅動傳遞到用戶空間的數(shù)據(jù)。儀器應用程序的開發(fā)采用MiniGUI開展,MiniGUI是由**飛漫公司開發(fā),可應用于實時嵌入式系統(tǒng)中的輕量級圖形用戶界面支持系統(tǒng)。其函數(shù)接口與WindowsSDK類似,開發(fā)方便。

MiniGUI的輸入抽象層(IAL:InputAbstractLayer)提供了對觸摸屏、鼠標等輸入設備的豐富支持,并支持PXA255處理器平臺。只要經(jīng)過簡單的設置就可以在應用程序中使用觸摸屏。配置安裝MiniGUI時,使用22enable2px255bial項,由于在安裝MiniGUI時采用了內(nèi)嵌資源的靜態(tài)編譯方式,所以在編譯之前,需在MiniGUI的src/sysres/目錄下建立mgetc2pxa1c文件,并在其中用下面語句設置系統(tǒng)參數(shù),將觸摸屏設為輸入設備。

staticchar*SYSTEM_VALUES[]={“fbcon”,“PX255B”,“/dev/ts”,“none”};

MiniGUI對觸摸屏輸入的處理方式如圖5所示。

MiniGUI通過觸摸屏設備驅動程序接收原始的輸入數(shù)據(jù),把它轉換為MiniGUI抽象的觸摸屏事件和數(shù)據(jù)。

相關的底層事件處理例程把這些觸摸事件轉換為上層的觸摸消息,放到相應的消息隊列中。應用程序通過消息循環(huán)獲取這些消息,交由窗口過程處理。編制針對觸摸屏的應用程序時,需要做的只是在窗口接收到諸如MSG_LBUTTONDOWN等觸屏消息時,調(diào)用相應的語句完成預期操作。

4結論

嵌入式智能儀器觸摸屏接口增強了儀器系統(tǒng)的人機交互功能,方便了操作人員的使用;接口電路和驅動程序的模塊化

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論