時間:2009-03-10 10:40:45來源:yangliu
圖一 觸摸屏嵌入式設(shè)計框圖[/align]
  2.2 Windows CE的主要功能 
  它是一個全新開發(fā)的模塊化的圖形用戶界面的多任務(wù)操作系統(tǒng),是一 
個支持多種CPU,擁有良好通信能力的高性能、高效率的實時操作系統(tǒng)。OEM廠家可以加入自己所需要的任何模塊,或者除去不需要的。系統(tǒng)中一個應(yīng)用程序的故障不會引起整個系統(tǒng)失效。 
  2.3 操作系統(tǒng)對觸摸屏的支持 
  操作系統(tǒng)對觸摸屏的支持是按分層的思想進(jìn)行的。首先是應(yīng)用層,編寫的應(yīng)用程序調(diào)用觸摸屏/鼠標(biāo)事件API(在牽引層有相關(guān)的API函數(shù));其次,在驅(qū)動層有支持觸摸屏的驅(qū)動程序。通過統(tǒng)一接口來調(diào)用操作系統(tǒng)內(nèi)核的觸摸屏設(shè)備驅(qū)動程序完成最終的設(shè)備控制。從中取出觸摸屏的實際坐標(biāo)值,把該值記錄在初始化程序中,當(dāng)下次有應(yīng)用程序需要調(diào)用觸摸屏驅(qū)動程序時,觸摸屏驅(qū)動程序就會去檢查初始化程序,讀取其中的校正值,并把經(jīng)過校正,影射后相對坐標(biāo)值返回該應(yīng)用程序。 
  2.4 觸摸屏電路 
  GX開發(fā)板為硬件平臺,板載SHARP 3.5〞TFT 液晶屏LQ035Q7DB02,320×240,262,144 色,White LED 背光,帶觸摸屏。SHARP液晶自帶四線電阻式觸摸屏,可以直接和2410的觸摸屏驅(qū)動電路連接,觸摸位置直接用CPU 內(nèi)置的ADC 電路采樣而得。
[align=center]
圖二 板載觸摸屏電路[/align]
  2.5 觸摸屏的控制電路 
  觸摸屏的控制是使用FM7843芯片完成的。FM7843是4線電阻觸摸屏轉(zhuǎn)換接口芯片。它具有同步串行接口的12位取樣模數(shù)轉(zhuǎn)換器。在125kHz吞吐速率和2.7V電壓下的功耗為750μW,而在關(guān)閉模式下的功耗僅為0.5μW。因此,ADS7843以其低功耗和高速率等特性,被廣泛應(yīng)用在采用電池供電的小型手持設(shè)備上。FM7843采用SSOP-16引腳封裝形式,溫度范圍是-40~85℃。為了完成一次電極電壓切換和A/D轉(zhuǎn)換,需要先通過串口往FM 7843發(fā)送控制字,轉(zhuǎn)換完成后再通過串口讀出電壓轉(zhuǎn)換值。標(biāo)準(zhǔn)的一次轉(zhuǎn)換需要24個時鐘周期。由于串口支持雙向同時進(jìn)行傳送,并且在一次讀數(shù)與下一次發(fā)控制字之間可以重疊,所以轉(zhuǎn)換速率可以提高到每次16個時鐘周期。如果條件允許,CPU可以產(chǎn)生15個CLK的話(比如FPGAs和ASICs),轉(zhuǎn)換速率還可以提高到每次15個時鐘周期。FM 7843 通過同步串口與ARM 通訊,可通過SendSIOData()函數(shù)(uhal.c)向FM 7843發(fā)送數(shù)據(jù);通過ReadSIOData()函數(shù)(uhal.c)從FM 7843 讀出數(shù)據(jù)。將F 端口的第6 位置0和1,可以打開、關(guān)閉FM7843,F(xiàn) 端口的數(shù)據(jù)寄存器為PDATF(44b.h)。通過外部中斷5可以判斷是否有觸摸動作,查詢方式通過宏TCHSCR_IsPenNotDown()(tchscr.h)判斷是否有觸摸動作。 
  [b]3 設(shè)計中的幾個關(guān)鍵問題 
  3.1 定制Windows CE平臺[/b] 
  Windows CE是一個多平臺的、可裁減的32位嵌入式操作系統(tǒng)。他既適用于工業(yè)設(shè)備的嵌入式控智模塊,也適用于消費(fèi)類電子產(chǎn)品的開發(fā)。針對不同的目標(biāo)設(shè)備硬件環(huán)境,在其內(nèi)核基礎(chǔ)上添加各種模塊,從而形成一個定制的嵌入式操作系統(tǒng)。它包括了定制設(shè)備所需的一切,例如:聯(lián)網(wǎng)能力、實時性和小內(nèi)存占用以及多媒體和Web瀏覽功能等。 
  3.2 Windows CE`的驅(qū)動模式 
  Windows CE`設(shè)備的驅(qū)動模型有兩種形式:流接口驅(qū)動(Stream Interface Driver)和本地設(shè)備驅(qū)動(Native Device Driver)從實現(xiàn)方式來看,無論那種驅(qū)動都可以采用單層和分層兩種方式,多層設(shè)備驅(qū)動中實現(xiàn)的代碼分兩層:MDD(Model Device Driver,模型設(shè)備驅(qū)動)和PDD(Platform Dependent Driver,平臺相關(guān)驅(qū)動)。MDD層中向GWES模塊提供了DDI(Device Driver Interface,設(shè)備驅(qū)動接口)函數(shù)接口,實現(xiàn)了對于同一類設(shè)備的驅(qū)動程序所公用的功能,而PDD則實現(xiàn)了與平臺的具體硬件設(shè)備相關(guān)的代碼。MDD通過調(diào)用特殊的PDD函數(shù)來訪問硬件。 
  3.3 觸摸屏與顯示器的配合算法 
  FM 7843 送回控制器的X 與Y 值僅是對當(dāng)前觸摸點的電壓值的A/D 轉(zhuǎn)換值,它不具有實用價值。這個值的大小不但與觸摸屏的分辨率有關(guān),而且也與觸摸屏與LCD 貼合的情況有關(guān)。而且,LCD 分辨率與觸摸屏的分辨率一般來說是不一樣,坐標(biāo)也不一樣,因此,如果想得到體現(xiàn)LCD 坐標(biāo)的觸摸屏位置,還需要在程序中進(jìn)行轉(zhuǎn)換。轉(zhuǎn)換公式如下: 
  x=(x-TchScr_Xmin)*LCDWIDTH/(TchScr_Xmax-TchScr_Xmin) 
  y=(y-TchScr_Ymin)*LCDHEIGHT/(TchScr_Ymax-TchScr_Ymin) 
  其中,TchScr_Xmax、TchScr_Xmin、TchScr_Ymax 和TchScr_Ymin 是觸摸屏返回電壓值x、y 軸的范圍, LCDWIDTH、LCDHEIGHT 是液晶屏的寬度與高度。 
  3.4 操作系統(tǒng)對觸摸屏的支持 
  操作系統(tǒng)對觸摸屏的支持是按分層的思想進(jìn)行的。首先是應(yīng)用層,編寫的應(yīng)用程序調(diào)用觸摸屏/鼠標(biāo)事件API(在牽引層有相關(guān)的API函數(shù));其次,在驅(qū)動層有支持觸摸屏的驅(qū)動程序。通過統(tǒng)一接口來調(diào)用操作系統(tǒng)內(nèi)核的觸摸屏設(shè)備驅(qū)動程序完成最終的設(shè)備控制。從中取出觸摸屏的實際坐標(biāo)值,把該值記錄在初始化程序中,當(dāng)下次有應(yīng)用程序需要調(diào)用觸摸屏驅(qū)動程序時,觸摸屏驅(qū)動程序就會去檢查初始化程序,讀取其中的校正值,并把經(jīng)過校正,影射后相對坐標(biāo)值返回該應(yīng)用程序。 
  3.5 觸摸屏的坐標(biāo)的確認(rèn) 
  通過上述方式采集的坐標(biāo)是相對于觸摸屏的坐標(biāo),需要轉(zhuǎn)換成為LCD 坐標(biāo),這個過程之前需要進(jìn)行兩種坐標(biāo)的校準(zhǔn)工作,這里采用取平均值法。首先從觸摸屏的4個頂角得到2個最大值和2個最小值,分別計為x_min,y_min 和x_max,y_max。X,Y 方向的確定 
  如表1 所示。

標(biāo)簽:
                                
                            
傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為傳動網(wǎng)(connectcrack.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
產(chǎn)品新聞
更多>2025-09-23
2025-09-23
2025-09-08
華為昇騰Atlas800iA2 910B服務(wù)器Deepsee...
2025-09-04
TaiShan(泰山)200 2280系列服務(wù)器 鯤...
2025-09-03
2025-08-06