汽車TFT彩屏儀表開發(fā)技巧
圖3是MPC5606S的DCU框圖,解釋了DCU如何提取及混疊圖形,最終圖形輸出到TFT LCD屏上。首先,DCU通過其自帶的DMA通道,從存儲空間(包括片內(nèi)/片外的所有存儲空間)提取相關(guān)的圖形內(nèi)容,根據(jù)設(shè)定的圖像格式轉(zhuǎn)換成24位(如果需要的話)圖像格式,然后通過混疊方式的設(shè)置,計算出每個像素的值,再根據(jù)Gamma校正的設(shè)置進(jìn)行校準(zhǔn)后,最終像素值會通過TFT LCD屏的數(shù)據(jù)總線輸出至屏上,并設(shè)置相應(yīng)標(biāo)志位提示幀結(jié)束、緩沖閾值和其它狀態(tài)變化信息。
本文引用地址:http://m.butianyuan.cn/article/170166.htmDCU動畫效果的實現(xiàn)
TFT LCD上的動畫效果,本質(zhì)上是一幀幀圖像連續(xù)切換的結(jié)果,切換速度決定了動畫效果的平滑與否。幀與幀之間的時間間隙,就是MCU準(zhǔn)備下一幀內(nèi)容的所有時間。MCU能否在這個時間完成下一幀的準(zhǔn)備工作,取決于MCU對圖形的處理能力,也決定了動畫效果是否平滑。
基于MPC5606S的Crossbar Switch架構(gòu),DCU這個主設(shè)備具有獨立的提取存儲在片內(nèi)或片外的圖像數(shù)據(jù)并顯示在TFT LCD上,即圖像數(shù)據(jù)直接由DCU讀取并實時進(jìn)行圖像混疊。e200z0h內(nèi)核在DCU輸出圖像時無需干預(yù),從而可以節(jié)省e200z0h核的運算負(fù)荷。但DCU無法自主得知16個圖層應(yīng)該輸出何種圖形,每個圖層還是需要e200z0h核進(jìn)行初始化配置。圖層初始化配置完畢后,DCU即可自行輸出圖形到TFT LCD的數(shù)據(jù)總線上。若需重新配置某一圖層,可由e200z0h核重新介入進(jìn)行配置即可。每個圖層可配置的信息,包括了當(dāng)前圖層顯示圖形的高度和寬度、圖形在TFT LCD顯示的位置、圖形存儲的地址(包括在片內(nèi)/片外的所有地址空間)、圖形顏色編碼方式、透明度及調(diào)色板(如果需要的話)、顏色混疊方式、Chroma和Tile尺寸。這些信息的改變效果,能夠在下一個TFT LCD場掃描周期開始時展示在屏上。
例如,對于一張顯示在TFT LCD屏幕上的圖形,當(dāng)e200z0h核改變這張圖片顯示的高度,例如從0到圖形的正常高度順序遞增,則顯示在TFT LCD屏幕上的效果,即是看到這張圖片順序打開。若e200z0h核改變這張圖片顯示的高度,從圖形的正常高度到0順序遞減,則顯示在TFT LCD屏幕上的效果,即是看到這張圖片順序被縮小,直至消失,類似于卷簾動畫。若對于一張顯示在TFT LCD屏幕上的圖形,固定其顯示區(qū)域(寬度和圖片一致,但高度小于圖片高度),當(dāng)e200z0h核順序改變顯示圖形存儲的地址為緊臨的下一行的地址,則顯示在TFT LCD屏幕上的效果,即是看到這張圖片在固定的顯示區(qū)域內(nèi),順序上浮顯示,類似于滾屏效果。若一個動畫被分解為若干幀,當(dāng)e200z0h核順序改變當(dāng)前層顯示圖形存儲的地址為下一幀的存儲地址,則動畫被顯示在TFT LCD屏上,e200z0h核改變當(dāng)前層顯示圖形存儲的地址的速度,即是動畫幀切換的速度。切換速度加快,即顯示出動畫快進(jìn)的效果。若e200z0h核僅順序改變當(dāng)前層顯示圖形在屏幕中的橫坐標(biāo),則當(dāng)前圖形在TFT LCD屏幕上勻速橫移;若以“加速度-勻速-減速度”改變其橫坐標(biāo),則當(dāng)前圖形在TFT LCD屏幕上會以“加速-勻速-減速”的效果顯示出來。
如果連續(xù)改變當(dāng)前顯示圖層透明度寄存器的值,則當(dāng)前圖層圖像的透明度就會連續(xù)變化。當(dāng)透明度從完全透明到完全不透明,則顯示出圖像淡入的效果。若透明度從完全不透明到完全透明,則實現(xiàn)了圖像淡出的效果。
DCU不同的圖層可以顯示存儲在同一地址的圖形,利用這一特性,可以實現(xiàn)陰影效果。例如圖層2和圖層3均顯示存儲在閃存中的同一張圖片,圖層2正常顯示圖片,而圖層3僅改變此圖層的調(diào)色板,使圖片的顏色均為黑色,當(dāng)兩個圖層顯示在TFT屏上時,使得兩層顯示的坐標(biāo)有錯位,則最終顯示在TFT屏上的圖像,是一副正常顯示的圖像后面有個錯位顯示的黑色陰影,達(dá)到偽3D效果。
結(jié)論
MPC5606S是一款針對TFT彩屏儀表應(yīng)用開發(fā)的芯片。它具有傳統(tǒng)的PowerPC系統(tǒng)穩(wěn)定可靠的特點,并且充分利用Crossbar Switch結(jié)構(gòu),實現(xiàn)DCU自主輸出圖像,并且最高可達(dá)16個圖層進(jìn)行疊加。通過改變圖層中對圖像顯示配置信息,可方便靈活地實現(xiàn)平移、卷簾、陰影等效果?,F(xiàn)在,飛思卡爾可以免費提供基于MPC5606S的圖形驅(qū)動軟件,結(jié)合片內(nèi)DMA功能,實現(xiàn)位移、旋轉(zhuǎn)、卷簾、變色、淡入淡出等功能。飛思卡爾也免費提供圖形、字庫轉(zhuǎn)換工具,可以實現(xiàn)絕大多數(shù)圖像格式、字庫的工程文件生成,方便地添加到用戶的工程中,實現(xiàn)所設(shè)計的動畫效果。高效的圖形顯示以及Crossbar Switch結(jié)構(gòu),使得MPC5606S能夠在上電后20ms內(nèi),完成TFT屏幕顯示內(nèi)容的輸出,足以滿足OEM對汽車儀表開機(jī)顯示速度的要求。
參考文獻(xiàn):
[1] MPC5606S Microcontroller Reference Manual[Z].Freescale Semiconductor
[2] Configuring and Using the DCU2 on the MPC5606S[Z].Freescale Semiconductor, AN4187
評論