下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1基于 ARM 與 WindowsCE的 LCD 顯示器設計i 引言隨著電子信息技術(shù)不斷發(fā)展,嵌入式系統(tǒng)的應用越來越廣泛。在嵌入式電子測量 系統(tǒng)中,LCD ( Liquid Crystal Display,液晶顯示器)作為人機交互的主要設備,具有功耗低、外形尺寸小和優(yōu)越的字符和圖形顯示功能。Win dowsCE 是嵌入式實時操作系統(tǒng),它友好的圖形界面,成為嵌入式開發(fā)的主流操作系統(tǒng),它使用圖形設備接口(GDI )來處理程序的圖形輸出,利用 GDI 所提供的眾多函數(shù)可方便地在LCD 屏幕上輸出圖形和文本1。基于嵌入式處理器 IntelPXA270 和 WindowsCE 設計 LCD 系統(tǒng)的原理,
2、為嵌入 式便攜設備提供了一種在高亮度顯示條件下維持低功耗的解決方案,適用于高檔PDA、便攜媒體播放器、手持式導航儀、便攜醫(yī)療和測試設備等領(lǐng)域,下文將介紹中國航空工業(yè)第 608 研究所新開發(fā)的鐵路機車故障診斷車載裝置LCD 設備的主要設計原理。2 基于 IntelPXA270 的 LCD 硬件系統(tǒng)系統(tǒng)采用基于 ARM 處理核的 IntelPXA270 處理器,64MB 的 SDRAM,M-System 的 DOC(Disk On Chip)H3 芯片作為存儲系統(tǒng),外接16 位的 800X480 的 TFT 顯示屏。2.1 ARM 處理器 IntelPXA270 及其 LCD 控制In telPX
3、A270 是 In tel 公司推出的基于 ARM 微處理核的嵌入式處理器,主頻最高可達 624MHz , IntelPXA270 加入了 Wireless MMX 技術(shù),大大提升了多媒體處理能力; 同時還加入了 In tel SpeedStep 動態(tài)電源管理技術(shù),在保證 CPU 性能的情況下,最大限度地降 低了設備功耗。IntelPXA270 內(nèi)置的 LCD 控制器為 IntelPXA270 處理器和平板顯示器提供了一 個接口,它所支持的平板顯示器包括被動的DSTN 液晶屏、主動的 TFT 液晶屏以及帶有內(nèi)部幀緩沖區(qū)的液晶屏,中國航空工業(yè)第608 研究所新開發(fā)的鐵路機車故障診斷車載裝置LCD
4、 設備使用的是 TFT 液晶屏。LCD 控制器用于傳輸顯示數(shù)據(jù)并產(chǎn)生必要的控制信號,表 12是 IntelPXA270 內(nèi)置的 LCD 控制器的控制信號:表 1 LCD 控制器的控制信號輕制信號名稱控湖信號的作用!LDD17-0180據(jù)線.一次可以傳輸4位*8位1謚或18隹數(shù) 據(jù)值到LCD顯示器L_LCLK_AO那夢嚳琶対翳希滿由移位奇存器到顯示驅(qū)L_FCLK_RD 包幗蹲f話呆L縮隱的柵.同時行指tT置二十呻箱賂一右-.LJIAS輸出允許1S號.用于摘示數(shù)據(jù)信號在時鐘信號的同歩下鎖存到引腳L PCLD WRR像寮吋種ts粵.用于指示一個像事點數(shù)據(jù)的帰輸IntelPXA270 內(nèi)置的 LCD
5、控制器支持多種顯示模式,其中包括了像素的數(shù)據(jù)格式,顯 示屏的大小、掃描方式、顏色模式等。In telPXA270 LCD 控制器內(nèi)部帶有很多寄存器,用于針對不同的液晶屏和不同的顯示模式進行配置。LCD 控制器帶有專用的 DMA ,它可以自2動地將顯示數(shù)據(jù)從幀內(nèi)存?zhèn)魉偷絃CD 驅(qū)動器,通過專用 DMA,可以在不需要 CPU 介入的情況下顯示數(shù)據(jù)。22TFT LCD 液晶屏TFT LCD 是 FG070053DSSWJGT1 顯示屏,顯示屏大小為 7 寸,分辨率為800X480,其內(nèi)部集成了輸入控制單元、TFT 顯示模塊,掃描驅(qū)動 IC,背光燈,DC/DC電壓轉(zhuǎn)換器,數(shù)據(jù)驅(qū)動IC 等,圖 1 為
6、FG070053DSSWJGT1 顯示屏內(nèi)部結(jié)構(gòu)3。TFT LCD 顯示屏要求的時序由幀同步( VSYNC)、行同步(HSYSNC )、比特時鐘(DCLK )及數(shù)據(jù)(Data0 : 15)構(gòu)成,幀同步和行同步指示每一幀和每一行的開始, 如圖 2 所示。圖 2 TFT LCD 時序圖2.3 TFT 屏的顯示接口電路結(jié)合 IntelPXA270 內(nèi)置的 LCD 控制器和 FG070053DSSWJGT1 液晶屏的內(nèi)部結(jié)構(gòu)以 及時序圖的分析,設計 LCD 顯示接口電路,主要是把IntelPXA270 的控制信號與 LCD 屏的控制引腳連接起來,如圖3 所示。通過 16 位數(shù)據(jù)線把 LCD 控制器的數(shù)
7、據(jù)發(fā)送腳與FG070053DSSWJGT1 的數(shù)據(jù)接收腳連接起來,即把(R0 -R4 , G0 G5, B0 B4 )與L_DD0-L_DD15 連接起來;把幀時鐘,行時鐘,像素時鐘等與LCD 屏連接;ADJ 采用電壓為 0 -3.0V、頻率為 20KHZ 的 PWM 脈沖,調(diào)節(jié)液晶屏背光燈的亮度,在滿足用戶要 求的同時還可有效地控制功耗。圖 3 中,網(wǎng)絡標號 LCLK 是行時鐘控制信號,F(xiàn)CLK 是幀時圖 1 TFT 內(nèi)部功能及接口iwinnnnnnnnjml.KKX3鐘控制信號,PCLK 是像素時鐘控制信號,0E 為數(shù)據(jù)輸出使能信號。 VDD 由直流 5V 穩(wěn)壓電源提供,U/D 通過電阻拉
8、低后對屏幕提供上下翻轉(zhuǎn)信號,L/R 支持屏幕左右翻轉(zhuǎn)控制。43 LCD 顯示程序的設計在WindowsCE 下 LCD 驅(qū)動程序開發(fā)使用基本圖形引擎(GPE )類來實現(xiàn)1 5。在使用 GPE 類編寫驅(qū)動程序之前,首先分析使用 GPE 類編寫顯示驅(qū)動時對顯示設備的要求, 內(nèi)存布局要求顯示設備使用線性幀緩沖區(qū),全部的顯示內(nèi)存是連續(xù)的;接下來分析GPE 類對內(nèi)存中數(shù)據(jù)格式的要求。LCD 屏是自頂向下的格式,像素(0, 0 )在左上角,像素(width-1,height-1 )在右下角。幀緩沖區(qū)的步幅,即表示顯示設備上一個掃描行在內(nèi)存中 占的字節(jié)數(shù),應當是四字節(jié)的整數(shù)倍,即使在每個掃描行的末尾填充一些
9、無用的字節(jié),CPU不需做 排”選擇也可以存取整個幀緩沖區(qū),幀緩沖區(qū)不應當使用位面(位面就是每種顏色信道RGB在幀緩沖區(qū)進行分開存儲)。使用 IntelPXA270 內(nèi)置的 LCD 控制器,集成了 7 個通道的 DMA,支持像素深 度分別為 2、4、 8、 16、 18、 24 位的 RGB 模式, 采用 16 位 RGB 模式進行設計。 圖像數(shù)據(jù) 保存在內(nèi)存中, 使用 DMA方式進行幀數(shù)據(jù)存取,幀的大小及幀地址是指定的,可以滿足 GPE 類的線性幀緩沖區(qū)的要求,LCD 控制與 LCD 屏都滿足 WindowsCE 下使用 GPE 類來實現(xiàn)顯示驅(qū)動的硬件要求。3.1 創(chuàng)建基于 GPE 類的顯示驅(qū)
10、動程序使用 GPE 類簡化了 WindowsCE 顯示設備的開發(fā)工作,GPE 類代表一個顯示設備,是一個純虛的類,設計顯示驅(qū)動時必須繼承這個基本GPE 類。首先定義一個新的類(class SA2Video )來繼承 GPE 類,根據(jù) GPE 類的要求, 實現(xiàn)以下函數(shù):NumModes- 返回顯示驅(qū)動所支持的顯示模式。GetModeInfo- 返回指定顯示模式的信息, 如顯示像素寬度和深度, 處理由 NumModes()函數(shù)返回的顯示模式,當SetModes()函數(shù)被調(diào)用時,總是返回在模式配置列表中的第一個模式值。SetModes- 設置顯示模式。AllocSurface 分配一個頁面,頁面僅僅
11、是保存像素數(shù)據(jù)的RAM 或視頻 RAM,是一個塊內(nèi)存,GPESurf 類能用于代表系統(tǒng)顯存上的一個頁面, 保證在視頻 RAM 上分配一個頁面。SetPointerShape 設置光標位圖和光標區(qū)。MovePointer- 移動光標。D D A AVVVV vvvvV V VVVVVV V V V V L L圖 3 TFT LCD 接口電路cnMtaK6daB器R2融:s:ssW-1 *5BltPrepare- 在位塊傳輸操作之前調(diào)用,如果驅(qū)動支持位塊傳輸之前的操作,它就允許驅(qū)動建立硬件位塊傳輸(blit )操作,并返回一個實際操作函數(shù)去執(zhí)行位塊傳輸(blit),在GPE 類中提供默認的 Bli
12、t 操作函數(shù)。BltComplete-在塊傳輸完成之后執(zhí)行,如果有必要的話,它允許設備做任何的清除操作。 Line -在畫線操作之前和之后調(diào)用,如果在畫線之前調(diào)用,該函數(shù)可以建立硬件的畫線 操作,然后返回 GPE默認的畫線操作;如果在畫線之后調(diào)用,該函數(shù)可以做任何畫線操作 之后的清除。In VBla nk標志是否在水平同步周期時顯示更新了。這些函數(shù)在 GPE 類的源代碼中為空函數(shù),所以必須在( class SA2Video )中實現(xiàn)函數(shù)重載。 3.2 創(chuàng)建LCD 控制器接口驅(qū)動程序創(chuàng)建 LCD 控制器的接口驅(qū)動程序主要是完成硬件的配置,包括 LCD 控制器和 10引腳接口的配置。 首先根據(jù) L
13、CD 顯示接口的電路連接,配置 IntelPXA270 內(nèi)的 10 寄存器,然后根據(jù)外接的 LCD 屏提供的參數(shù)配置 LCD 控制器,主要是配置 TFT 接口時序,如幀時 鐘,行時鐘,像素時鐘,數(shù)據(jù)輸出使能等6。在 xllp_lcd.c 文件中的 XllpLCDInit ()函數(shù)實現(xiàn)硬件的初始化,以下為該函數(shù)的關(guān)鍵代碼:XLLP_STATUS_T Xll pLCD In it(P_XLLP_LCD_T pXll pLCD) XLLP_STATUS_T status = 0;/初始化 IO 接口,根據(jù) LCD 連接電路圖進行配置LCDSetupGPIOs(pXllpLCD);/初始 LCD 控制
14、器及幀緩沖區(qū)LCDI nitCon troller(p Xll pLCD);/清除 LCD 控制器的狀態(tài)寄存器LCDCIearStatusReg(p XllpLCD);/使能 LCD 控制器,驅(qū)動 LCD 屏顯示數(shù)據(jù)LCDE nableCo ntroller(p Xll pLCD);return status;3.3 LCD 控制器顯示模式的設置Win dowsCE GDI支持帶有多種顏色灰度和顏色模式的顯示設備,從僅用一位表示的顏色到調(diào)色板調(diào)制出真32 位 RGB,每一種格式支持幾種不同的像素排列方式,這取決于對顯示內(nèi)存的訪問是否支持單字節(jié)方式、雙字節(jié)字方式、四字節(jié)方式。使用下列掩碼來提取紅
15、、綠、藍數(shù)值:每個像素用 16 位表示的格式是一種掩碼格式,并且不被調(diào)色,每個像素我們用兩字節(jié)來存儲。結(jié)合TFT LCD 顯示接口的硬件電路圖和 IntelPXA270 內(nèi)置的 LCD 控制器,按照 IntelPXA270 處理器手冊上的說明,需要對控 制引腳初始化7。在圖 3 中,第 14 口用來進行幀時鐘控制,結(jié)合IntelPXA270 數(shù)據(jù)手冊,我們配置第 14 口為 L_VSYNC 功能,用如下語句實現(xiàn):GAFRO_L|=(GAFRO_L &(1u29)|(1uGPDR1|=(XLLP_GPIO_BIT_L_DDO|XLLP_GPIO_BIT_L_DD1|XLLP_GPIO_B
16、IT_L_DD2|XLLP_GPIO_BIT_L_DD3|XLLP_GPIO_BIT_L_DD4|XLLP_GPIO_BIT_L_DD5);p_GPIORegs-GPDR2|=(XLLP_GPIO_BIT_L_DD6|XLLP_GPIO_BIT_L_DD7|XLLP_GPIO_BIT_L_DD8|XLLP_GPIO_BIT_L_DD9|XLLP_GPIO_BIT_L_DD10|XLLP_GPIO_BIT_L_DD11|XLLP_GPIO_BIT_L_DD12|XLLP_GPIO_BIT_L_DD13|XLLP_GPIO_BIT_L_DD14|XLLP_GPIO_BIT_L_DD15);p_GP
17、IORegs-GAFR1_U=(p_GPIORegs-GAFR1_ U& (XLLP_GPIO_AF_BIT_L_DDO_MASK|XLLP_GPIO_AF_BIT_L_DD1_MASK|XLLP_GPIO_AF_BIT_L_DD2_MASK|XLLP_GPIO_AF_BIT_L_DD3_MASK|XLLP_GPIO_AF_BIT_L_DD4_MASK|XLLP_GPIO_AF_BIT_L_DD5_MASK)|XLLP_GPIO_AF_BIT_L_DDO|XLLP_GPIO_AF_BIT_L_DD1|XLLP_GPIO_AF_BIT_L_DD2|XLLP_GPIO_AF_BIT_L_D
18、D3|XLLP_GPIO_AF_BIT_L_DD4|XLLP_GPIO_AF_BIT_L_D;在 WindowsCE 下都使用虛擬地址,經(jīng)過一個映射函數(shù)將用到的物理地址轉(zhuǎn)化為虛擬地址,這是 WindowsCE 操作系統(tǒng)所要求的,映射地址的函數(shù)為BOOL MapVirtualAddress() 。按照屏的顯示模式來配置 LCD 控制寄存器,其中包括配置 LCD 控制信號的模式 通過參看IntelPXA270 的數(shù)據(jù)手冊和一系列的計算,在掌握 TFT LCD 時序圖的基礎(chǔ)上進行 參數(shù)配置:L_FCLK 為幀時鐘;L_LCLK_A0 為行時鐘;L_BIAS 為時鐘使能;L_PCLK_WR 為像素時鐘
19、,LDD為像素點數(shù)據(jù),在本設計中我們只用到了LDD。ENB : LCD 數(shù)據(jù)使能位 HSP :水平時鐘信號電壓極性0LCD 不可用 0水平時鐘為高電平有效1-LCD 使能 1-水平時鐘為低電平有效PCP:像素時鐘電壓極性0-像素數(shù)據(jù)在數(shù)據(jù)引腳為上升沿時采樣1-像素數(shù)據(jù)在數(shù)據(jù)引腳為下降沿時采樣(1)行列的定義:PPL : LCD 屏的水平像素點的個數(shù)。根據(jù)LCD 屏的長度來確定其值的大小。PPL =行寬-1在本設計中,行寬為 800,那么 PPL=800-1 ;LPP : LCD 屏的垂直像素點的個數(shù)。根據(jù)LCD 屏的寬度來確定其值的大小。LPP=列高一 1在本設計中,列高為 480,那么 LPP=480 1;(2) L_PCLK_WR :VCLK 是 LCD 控制器的時鐘信號,此信號是LCD 控制器和 LCD
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 患者滿意度調(diào)查與改進制度
- 2024年視頻剪輯師專項勞動協(xié)議
- 2024專業(yè)餐飲店改造裝潢協(xié)議范本
- 2024年設備分階段購銷協(xié)議模板
- 老年人財務管理檔案方案
- 數(shù)字化養(yǎng)豬場數(shù)據(jù)分析方案
- 科技企業(yè)客戶反饋處理方案
- 鄉(xiāng)鎮(zhèn)消防器材配備與維護方案
- 2024年戶外消防系統(tǒng)施工協(xié)議樣本
- 消防設備設施管理培訓
- 《直線與圓錐曲線的綜合問題》示范公開課教學課件【高中數(shù)學北師大】
- 人體衰老和抗衰老研究 課件
- 新城吾悅廣場商業(yè)封頂儀式策劃方案
- 《故都的秋》《荷塘月色》《我與地壇(節(jié)選)》群文閱讀 導學案 統(tǒng)編版高中語文必修上冊
- 橈骨遠端骨折中醫(yī)治療培訓課件
- 例說議題式課堂教學的模式課件
- 小學數(shù)學北師大三年級上冊五周長圍籬笆
- 25噸吊車參數(shù)表75734
- 外研版五年級上冊說課標說教材課件
- 被巡察單位組織人事工作匯報集合5篇
- 青少年科技創(chuàng)新大賽培訓課件
評論
0/150
提交評論