基于FPGA的LCD顯示的遠程更新設(shè)計實現(xiàn)
1.1 LCD的產(chǎn)生與發(fā)展
液晶顯示器,簡稱LCD(Liquid Crystal Display)。世界上第一臺液晶顯示設(shè)備出現(xiàn)在20世紀70年代初,被稱之為TN-LCD(扭曲向列)液晶顯示器。80年代,STN-LCD(超扭曲向列)液晶顯示器出現(xiàn),同時TFT-LCD(薄膜晶體管)液晶顯示器技術(shù)被研發(fā)出來,但液晶技術(shù)仍未成熟,難以普及。80年代末90年代初,日本掌握了STN-LCD及TFT-LCD生產(chǎn)技術(shù),LCD工業(yè)開始高速發(fā)展。
現(xiàn)在,LCD是筆記本電腦和掌上電腦的主要顯示設(shè)備,在投影機中,它也扮演著非常重要的角色,而且它開始逐漸滲入到桌面顯示器市場中。相信不遠的未來,LCD顯示器將會更為普及地應用于商業(yè)、工業(yè)、軍事等領(lǐng)域。
1.2 遠程視頻監(jiān)控系統(tǒng)的簡述
早期的視頻監(jiān)控系統(tǒng)受限于地域限制,隨著視頻監(jiān)控技術(shù)與網(wǎng)絡(luò)技術(shù)的發(fā)展,出現(xiàn)了遠程視頻監(jiān)控系統(tǒng)。遠程視頻監(jiān)控系統(tǒng)是把圖形信息轉(zhuǎn)變成信號信息,通過攝取、傳輸、顯示等設(shè)備實現(xiàn)一定距離內(nèi)圖形轉(zhuǎn)換為圖像,在互聯(lián)網(wǎng)上傳輸,從而實現(xiàn)較遠距離可以看到現(xiàn)場圖形信息的系統(tǒng)。
遠程視頻監(jiān)控系統(tǒng)通過互聯(lián)網(wǎng)打破了地域限制,隨著遠程視頻監(jiān)控技術(shù)的成熟以及應用,人們的生產(chǎn)、生活以及企業(yè)管理正在發(fā)生新的變化,遠程視頻監(jiān)控系統(tǒng)廣泛滲透到教育、政府、娛樂場所、醫(yī)院、酒店、運動場館、城市治安甚至家庭等多個領(lǐng)域。
遠程視頻監(jiān)控系統(tǒng)主要包括:前端攝像設(shè)備、傳輸存儲設(shè)備、終端控制顯示設(shè)備。其中,LCD顯示作為監(jiān)控顯示設(shè)備應用于遠程視頻監(jiān)控系統(tǒng)中。圖 1為某視頻監(jiān)控系統(tǒng)設(shè)計原理圖。
圖 1 某視頻監(jiān)控系統(tǒng)設(shè)計原理圖
第2章 系統(tǒng)整體設(shè)計方案
2.1研究需求與目標
2.1.1研究需求
本設(shè)計“基于FPGA的LCD顯示的遠程更新”作為遠程視頻監(jiān)視系統(tǒng)的監(jiān)控終端設(shè)備,伴隨著視頻監(jiān)控系統(tǒng)的發(fā)展而發(fā)展。近年來,中國視頻監(jiān)控市場受平安城市建設(shè),北京奧運會、上海世博會、廣州亞運會、深圳大運會等安保項目以及各行業(yè)視頻監(jiān)控需求快速增長等因素的刺激和拉動,取得了超常規(guī)快速發(fā)展,整體市場規(guī)模迅速擴大。
作為中國視頻監(jiān)控市場未來發(fā)展方向之一的網(wǎng)絡(luò)化視頻監(jiān)控系統(tǒng),其市場規(guī)模將于2013年達168.91億元,增速遠超行業(yè)平均增長率水平。鑒于技術(shù)條件限制,高清視頻監(jiān)控一般建立在網(wǎng)絡(luò)化的應用基礎(chǔ)之上,若考慮給予智能高清視頻監(jiān)控市場占IP視頻監(jiān)控市場15%的份額估算,則2011-2013年智能高清監(jiān)控市場規(guī)模將分別達13億元、18億元和25億元,復合增速將高于36%。綜上所述,可以預計未來3-5年視頻監(jiān)控市場將繼續(xù)保持強勁增長,行業(yè)整體處于高速發(fā)展階段??梢?,本設(shè)計有著廣泛的應用前景以及市場需求。
2.1.2研究目標
本次設(shè)計定位為視頻監(jiān)控系統(tǒng)的終端設(shè)備,其在系統(tǒng)中的位置如圖 2所示。
圖 2 視屏監(jiān)控系統(tǒng)結(jié)構(gòu)圖
本設(shè)計預期實現(xiàn)的功能與技術(shù)指標:
提供良好的人機界面和簡單方便的操作方式;
提供兩種視頻監(jiān)控方式:實時視頻播放以及歷史錄像的播放;
預留USB接口,方便用戶擴展前端存儲功能;
提供用戶管理功能,實現(xiàn)權(quán)限管理;
支持圖像屏蔽與圖像抓拍;
實現(xiàn)圖像分辨率:640*480;
實現(xiàn)視頻幀率:30fps
其中,監(jiān)控人員具體的操作方式為通過鼠標來選擇觀看實時視頻或查詢視屏錄像:
在觀看實時視頻時,本設(shè)計運行FTPClient應用程序向視屏錄像服務(wù)器請求實時的視屏數(shù)據(jù),將接收到的實時視屏先緩存在本地的內(nèi)存中,然后進行解碼、播放,通過HDMI接口將視屏數(shù)據(jù)傳輸?shù)絃CD顯示器上面顯示。
在查詢歷史錄像時,本設(shè)計擬提供瀏覽視屏錄像服務(wù)器中所有視屏錄像的功能,用戶根據(jù)自己的需要,選取相關(guān)的視屏文件,當用戶選擇下載視屏文件到本地時,本設(shè)計從視屏錄像服務(wù)器上面緩存視屏文件到內(nèi)存中,然后寫入掛載的U盤中。當視屏下載完畢后,運行播放器程序播放下載的視屏文件,提供播放、前進、后退、暫停等常用的播放功能。
2.2 系統(tǒng)概要設(shè)計
2.2.1 Genesys開發(fā)板簡介
Digilent的Genesys開發(fā)板集成了功能強大的Xilinx Virtex®-5 FPGA,為廣大用戶帶來了一個功能強大、方便實用的設(shè)計平臺。其設(shè)計框圖如圖 3所示。
圖 3 Genesys開發(fā)板的組成框圖
Genesys板上還集成了千兆以太網(wǎng)接口、高速存儲器、高分辨率音頻和視頻電路、以及USB主機接口等選項。Genesys開發(fā)板采用業(yè)界主流設(shè)計,無論是復雜系統(tǒng),還是專用的高性能應用,Genesys都能為您提供有效的解決方案。其主要特性如下所示:
Xilinx Virtex 5 LX50T FPGA, 1136-pin BGA package
256Mbyte DDR2 SODIMM with 64-bit wide data
10/100/1000 Ethernet PHY and RS-232 serial port
multiple USB2 ports for programming, data, and hosting
HDMI video up to 1600x1200 and 24-bit color
AC-97 Codec with line-in, line-out, mic, and headphone
real-time power monitors on all power rails
16Mbyte StrataFlash™ for configuration and data storage
Programmable clocks up to 400MHz
112 I/O’s routed to expansion connectors
GPIO includes eight LEDs, two buttons, two-axis navigation switch, eight slide switches, and a 16x2 character LCD
ships with a 20W power supply and USB cable
2.2.2基于Genesys開發(fā)板的實現(xiàn)構(gòu)想
根據(jù)上面所述的預期實現(xiàn)功能與技術(shù)指標,并結(jié)合Genesys開發(fā)板的資源,本設(shè)計的實現(xiàn)構(gòu)想:
使用XILINX公司的Microblaze作為整個系統(tǒng)的中央處理器;
在Microblaze軟核處理器系統(tǒng)中進行PeatLinux操作系統(tǒng)的移植;
使用FTP協(xié)議進行圖像數(shù)據(jù)的傳輸;
通過有線以太網(wǎng)的通訊方式與FTP服務(wù)器進行連接,并下載FTP服務(wù)器里的視頻數(shù)據(jù)進行播放或存儲在本地的U盤上;
使用帶有HDMI的LCD液晶顯示器作為顯示設(shè)備;
2.2.3 Genesys開發(fā)板上的資源利用情況
根據(jù)設(shè)計的要求,Genesys開發(fā)板上的硬件資源既能滿足本設(shè)計的硬件需求又能顯示出其優(yōu)越的性能。表格 1為本設(shè)計在Genesys開發(fā)板上的資源利用情況。
表格 1 本設(shè)計在Genesys開發(fā)板上的資源利用情況
Genesys開發(fā)板的硬件資源 | 本設(shè)計中的使用情況 |
Adept USB2 | √ |
DDR 256MByte | √ |
HDMI Video | √ |
10/100/1000 Ethernet PHY | √ |
Basic I/O | √ |
16 X 2 LCD | |
High-Speed Expansion | |
iMPACT USB2 | √ |
StrataFlash 32Mbyte | √ |
AC-97 Audio Codec | |
USB Host | √ |
Clock Gen | √ |
RS-232 Port | √ |
Pmod Port Expansion | √ |
第3章 系統(tǒng)詳細設(shè)計
3.1 系統(tǒng)硬件平臺設(shè)計
3.1.1 系統(tǒng)的硬件構(gòu)成
本系統(tǒng)的硬件設(shè)計由以下部分構(gòu)成:MicroBalze處理器、中斷控制器XPS INTC、XPS Timer/Counter定時器/計數(shù)器、XPS BRAM接口控制器、外部存儲器控制器XPS MCH EMC、多端口存儲器控制器 XPS MPMC,DMA控制器XPS DMA、外設(shè)控制器 XPS EPC、三態(tài)以太網(wǎng)MAC核 XPS LL TEMAC、XPS TFT控制器、串口控制器XPS UART 16650、通用IO控制器 XPS GPIO、XPS PS2等控制器組成。圖4為本系統(tǒng)的結(jié)構(gòu)框圖。
其中,MicroBalze處理器、中斷控制器XPS INTC、XPS Timer/Counter定時器/計數(shù)器構(gòu)成了移植Petalinux基本硬件平臺。多端口存儲器控制器 XPS MPMC連接外部的DDR2 SODIMM,外部存儲器控制器XPS MCH EMC連接外接的Flash。XPS EPC提供USB Host功能用來連接U盤。XPS LL TEMAC 核用來提供以太網(wǎng)接入。XPS TFT 控制器連接HDMI接口,驅(qū)動LCD的顯示。XPS UART 16650 連接串口,作為移植PetaLinux的調(diào)試接口。XPS PS2 IPCore 連接PS2接口,在本設(shè)計中連接鼠標,提供用戶操作接口。
圖 4 系統(tǒng)結(jié)構(gòu)框圖
3.1.2 系統(tǒng)所需的IP核簡介
為了提高設(shè)計性能和縮短設(shè)計周期,本設(shè)計將會充分利用Xilinx公司所提供的多個IP核進行開發(fā)設(shè)計。本設(shè)計中將會使用到的IP核以及使用該IP核的理由如下所述:
軟處理器 本設(shè)計使用的處理器IP核為MicroBlaze。MicroBlaze內(nèi)核是一款32位 RISC 哈佛架構(gòu)軟核處理器,具有豐富的、針對嵌入式應用進行了優(yōu)化的指令集。MicroBlaze 擁有超過 70 種配置選項,支持從超小型嵌入式微控制器到運行 Linux 的高性能嵌入式計算機的各種配置。這種靈活性的核心在于兩種版本的 MicroBlaze:針對面積進行了優(yōu)化的 MicroBlaze(帶有3級指令執(zhí)行流水線)和針對性能進行了優(yōu)化的 MicroBlaze(帶有5級指令執(zhí)行流水線)。
中斷控制器 設(shè)計中,選取了XPS Interrupt Controller IP Core該中斷控制器。該控制器具有如下特征:作為32bit的從設(shè)備連接到32、64或128位的PLB總線上;可配置的中斷輸入數(shù)目;觸發(fā)沿可設(shè)置為上升沿或下降沿。
定時器 設(shè)計中需要使用定時器來為PetaLinux產(chǎn)生時鐘節(jié)拍,設(shè)計中選了XPS Timer/Counter,是用于連接PLB總線上的32位定時器。該IP同時具有如下特征:作為32bit的從設(shè)備連接到32、64或128位的PLB總線上;其PLB接口支持字節(jié)使能;可編程的定時器位寬;PWM輸出。
DDR2控制器 選用XPS MPMC IP Core作為本系統(tǒng)的DDR2內(nèi)存控制器。該控制器具有如下特點:支持SDMA;支持單速率內(nèi)存(SDR)和雙速率內(nèi)存(DDR/DDR2/DDR3/LPDDR);支持錯誤檢驗、性能顯示和寄存器調(diào)試功能。
片上Block RAM控制器 選用BRAM Interface Controller作為片上Block RAM的控制器。該控制器具有如下特點:支持32、64、128位的PLB接口;支持32、64、128位的內(nèi)部RAM數(shù)據(jù)寬度;32bit的地址寬度。
FLASH控制器 選用XPS MCH EMC作為外部FLASH存儲控制器,該控制器具有如下特點:可作為32bit的從設(shè)備連接到32、64或128位的PLB總線上;支持多達4個的外部存儲塊;支持單beat傳輸和burst傳輸;支持同步/異步SRAMs和Nor Flash內(nèi)存芯片。
DMA控制器 選用XPS Central DMA Controller作為系統(tǒng)的DMA控制器,該控制器具有如下特點:可作為32bit的從設(shè)備連接到32、64或128位的PLB總線上;支持一個通道的源地址到目的地址的內(nèi)存直接讀取;提供可編程的源地址、目標地址和傳輸長度;參數(shù)化的本地FIFO深度和burst突發(fā)深度;支持不連續(xù)塊的會輸。
U盤控制器 選用XPS External Peripheral Controller作為U盤存儲的控制器,該控制器具有如下特點:可作為32bit的從設(shè)備連接到32、64或128位的PLB總線上;支持同步或異步的方式與外設(shè)通訊;可根據(jù)外設(shè)芯片來設(shè)定數(shù)據(jù)寬度;可配置的外部總線接口時序。
以太網(wǎng)控制器 選取XPS LL TEMAC作為本設(shè)計的以太網(wǎng)MAC控制器,該控制器具有如下特點:具有2K、4K、8K、16K、32K 字節(jié)的接收和發(fā)送數(shù)據(jù)FIFO緩存;過濾錯誤幀;支持多種PHY接口;全雙工操作;支持VLAN幀。
TFT顯示控制器 選取XPS TFT Controller作為LCD控制器,該控制器具有如下特點:支持18bit VGA或24bit DVI;支持25MHz 時鐘實現(xiàn)640*480分辨率、60Hz刷新率;支持PLB接口與TFT接口的兩個獨立時鐘。
UART控制器 選取XPS 16650 UART作為本設(shè)計的串口控制器,該控制器具有以下特征:支持PLB V4.6接口;軟硬件上兼容全部16450和16550UARTs;滿足所有的串口接口協(xié)議。
通過I/O控制器 設(shè)計中選用PLB General Pupose Input/Output來控制LED燈,該控制器可配置為單端或雙端GPIO通道;每個GPIO可動態(tài)配置為輸入或輸出口;可生產(chǎn)中斷請示。
PS2控制器 本設(shè)計中使用XPS PS2 Controller作為鼠標的控制器,該控制器的特征有:作為32bit的從設(shè)備連接到32、64或128位的PLB總線上;可配置成單端或雙端的PS2控制器;支持兩個PS2設(shè)備,分別由兩個8字節(jié)寬的寄存器控制。
3.1.3 移植PetaLinux的可行性分析
Genesy Virtex-5 FPGA Development Board開發(fā)板上面有256MB的DDR2 SODIMM、16Mbyte StrataFlash(一共32M字節(jié))。這16Mbyte StrataFlash作為非易失存儲器來存放FPGA的配置文件,單個FPGA的配置文件大小不超過2MByte,剩余30M字節(jié)供用戶使用。PetaLinux一般規(guī)則下的最小配置為需要4MByte的DDR2,推薦使用16MByte的DDR2,至少8Mbyte的FLASH。因此,在Genesy Virtex-5 FPGA Development Board開發(fā)板上面嵌入MicroBlaze處理器核后,再進行PetaLinux的移植是可行的。本設(shè)計采用的嵌入式操作系統(tǒng)為2.6內(nèi)核的PetaLinux。
3.2 嵌入式系統(tǒng)的選取
支持MicroBlaze 處理器的嵌入式操作系統(tǒng)很多,比如μC/ OS-II、BuleCat ME Linux、RTA MB、 hreadX、PetaLinux等。PetaLinux 操作系統(tǒng)是面向MicroBlaze 軟核處理器的全功能嵌入式 Linux 操作系統(tǒng)。其發(fā)布采用了“all in one” 的整合方式, 將針對 MicroBlaze 處理器定制的Linux2. 4/ 2. 6 內(nèi)核源碼、 U2boot 源碼、相關(guān)的開發(fā)工具以及開發(fā)板參考硬件平臺配置,集成在一個壓縮包內(nèi)發(fā)行,極大地方便了開發(fā)人員的使用。該操作系統(tǒng)主要具有以下幾大特點:
針對 FPGA 嵌入式開發(fā)的特點采用了板級支持包。
自動生成工具,可以根據(jù)用戶定義的嵌入式硬件平臺信息自動生成板級支持包,簡化了操作系統(tǒng)的移植。
PetaLinux 發(fā)布的源碼樹中包含了部分常用 IP 核的驅(qū)動程序(如 GPIO、 EthernetLite、 UartLite 等) ,減少了用戶移植、 編寫驅(qū)動程序的工作量。
根據(jù)設(shè)計的不同需求,可以通過配置菜單將 PetaLinux 配置成without MMU support 和MMU support 兩種版本,即μClinux 和標準Linux。
PetaLinux包含了大量的腳本命令(如petalinux2cop2y2autoconfig、petalinux2new2platform、petalinux2new2app等) ,給用戶的使用提供了便捷條件。
本題目要求實現(xiàn)以FTP協(xié)議遠程更新LCD,F(xiàn)TP是文件傳輸協(xié)議的縮寫,它是一種用于文件傳輸?shù)腎nternet標準。通常,我們可以認為FTP是一種基于TCP/IP協(xié)議的應用程序,它工作在OS網(wǎng)絡(luò)模型的第七層,TCP協(xié)議的應用層上。
完善的內(nèi)置網(wǎng)絡(luò)是Linux的一大特點。 Linux在通信和網(wǎng)絡(luò)功能方面優(yōu)于其他操作系統(tǒng)。其他操作系統(tǒng)不包含如此緊密地和內(nèi)核結(jié)合在一起的連接網(wǎng)絡(luò)的能力,也沒有內(nèi)置這些聯(lián)網(wǎng)特性的靈活性。而Linux為用戶提供了完善的、強大的網(wǎng)絡(luò)功能。
支持Internet是其網(wǎng)絡(luò)功能之一。Linux免費提供了大量支持Internet的軟件,Internet是在Unix領(lǐng)域中建立并繁榮起來的,在這方面使用Linux是相當方便的,用戶能用Linux與世界上的其他人通過Internet網(wǎng)絡(luò)進行通信。
文件傳輸是其網(wǎng)絡(luò)功能之二。用戶能通過一些Linux命令完成內(nèi)部信息或文件的傳輸。
遠程訪問是其網(wǎng)絡(luò)功能之三。Linux不僅允許進行文件和程序的傳輸,它還為系統(tǒng)管理員和技術(shù)人員提供了訪問其他系統(tǒng)的窗口。通過這種遠程訪問的功能,一位技術(shù)人員能夠有效地為多個系統(tǒng)服務(wù),即使那些系統(tǒng)位于相距很遠的地方。
PetaLinux強大的網(wǎng)絡(luò)功能可以很好的完成本題目網(wǎng)絡(luò)傳輸?shù)囊螅译S著PetaLinux的不斷發(fā)展,越來越多的Xilinx公司的IP Core驅(qū)動程序(XPX LL TEMAC, XPS UART 16550,XPS GPIO,XPS DMA)加入了其內(nèi)核中,大大減小了開發(fā)的難度,加上linux是開源的,在網(wǎng)上有大量的資源可以獲取,從另一方面加速了設(shè)計開發(fā)的進程。基于以上優(yōu)點,選擇了PetaLinux作為本次設(shè)計的嵌入式操作系統(tǒng)。
3.3 嵌入式系統(tǒng)應用程序設(shè)計
基于FPGA的LCD顯示的遠程更新的軟件部分可分為FTP客戶端模塊、視屏播放器模塊和圖形人機交互模塊三部分,其軟件的組成結(jié)構(gòu)如圖 5所示,它們的作用分別是:
FTP客戶端模塊:實現(xiàn)FTP客戶端的基本功能并提供文件下載的接口函數(shù)供上層調(diào)用。
視屏播放器模塊:實現(xiàn)視屏文件的播放控制。
圖形人機交互模塊:提供整個系統(tǒng)的圖形化用戶管理接口。
圖 5 軟件組成
3.3.1 FTP客戶端的設(shè)計
FTP在TCP/IP協(xié)議層間的位置如圖 6所示:
圖 6 FTP在TCP/IP協(xié)議層間的位置
FTP與其他基于TCP協(xié)議的應用程序不同,它在客戶進程和服務(wù)器進程之間使用了兩個TCP連接:一個是控制連接,客戶端與FTP服務(wù)器通過控制連接進行溝通,連接FTP,發(fā)送FTP指令都是通過控制連接來完成的,它會一直持續(xù)到客戶進程與服務(wù)器進程之間的會話完成為止;另一個是數(shù)據(jù)連接,每當有文件在客戶機與服務(wù)器之間傳輸時,就建立一個數(shù)據(jù)連接,數(shù)據(jù)請求完成后,F(xiàn)TP關(guān)閉該段數(shù)據(jù)連接。FTP采用這種方式將傳輸控制與數(shù)據(jù)傳輸?shù)耐ǖ老嗷シ蛛x,最大限度地提高了網(wǎng)絡(luò)中數(shù)據(jù)的吞吐量。
視屏錄像服務(wù)器中保存了視屏錄像,假設(shè)在視屏錄像服務(wù)器上也運行了FTP服務(wù)器程序,當用戶點播實時視頻時,本設(shè)計以匿名用戶登陸FTP服務(wù)器將視屏文件的部分先緩存到本地的DDR2 SODIMM中,然后同時進行下載和播放。當用戶選擇查詢視屏錄像時,首先將需要觀看的視屏下載到本地的U盤中,然后使用播放器進行播放??紤]到文件下載是一種非常耗時的操作,為了提高視屏文件的下載效率,視屏文件的下載操作需要在子線程中完成。
3.3.2 視屏播放器模塊的設(shè)計
視屏播放器模塊準備在PeatLinux上面移植Mplayer播放器。MPlayer是Linux上的視屏播放器,它的功能十分強大,能夠播放眾多格式的文件,在X86 PC機上運行很穩(wěn)定,也可以把它移植到非X86CPU上的嵌入式系統(tǒng)中來。相對其它播放器來說,其資源占用非常少,不需要任何系統(tǒng)解碼器就可以播放各種媒體格式,對于MPEG/XviD/DivX格式的文件支持尤其好。MPlayer能使用眾多本地的Xanim,RealPlayer和Win32 DLL編解碼器,播放大多數(shù)MPEG、VOB、AVI、OGG、VIVO、ASF/WMV、QT/MOV、FLI、RM、NuppelVideo、yuv4mpeg、FILM、RoQ文件。借助于MPlayer你能觀看VideoCD、SVCD、DVD、3ivx、RealMedia和DivX格式的電影。MPlayer的另一個大的特色是支持廣泛的輸出設(shè)備,它可以在X11、Xv、DGA、OpenGL、SVGAlib、fbdev、Aalib、DirectFB下工作,而且你也能使用GGI和SDL(由此使用它們支持的各種驅(qū)動模式)和一些低級的硬件相關(guān)的驅(qū)動模式。這個播放器能很穩(wěn)定地播放被破壞的MPEG文件,并且它能播放Windows media player都打不開的有損壞的AVI文件,甚至,沒有索引部分的AVI文件也可以播放。
Mplayer播放器采用了MEncoder解碼器。MEncoder采用的編解碼器包是libavcodec,這個編解碼器包可以在多種平臺上對Cinepak、DV、H.263、H.264/MPEG-4 AVC、HuffYUV、Indeo、MJPEG、MPEG-1、MPEG-2、MPEG-4 Part 2、RealVideo、Sorenson、Theora、WMV編碼格式的視頻流進行解碼,它同時也是已知完成這些任務(wù)最快的解碼器。
Mplayer移植到嵌入式平臺時,編譯后的可執(zhí)行程序的大小在10~16MByte之間,由于Genesys開發(fā)板只有30MByte的Flash可以使用,所以不將Mplayer編譯后的可執(zhí)行文件放在文件系統(tǒng)中,而是將它存儲在U盤中,待運行時再將它加載到開發(fā)板上執(zhí)行。
3.3.3 圖形人機交互模塊
本設(shè)計以鼠標作為用戶輸入接口,采用帶有HDMI接口的LCD顯示器作為輸出設(shè)備,利用QT 2.2.0進行圖形界面的設(shè)計。QT/E是跨平臺的C++圖形用戶界面(GUI)工具包,它是著名的QT開發(fā)商TrollTech發(fā)布的面向嵌入式系統(tǒng)的QT版本,Qt是目前KDE等項目使用的GUI支持庫,許多基于Qt的X Windows程序可以非常方便地移植到嵌入式Qt/Embedded版本上。自從Qt/Embedded發(fā)布以來,就有許多嵌入式Linux開發(fā)商利用Qt/Embedded進行嵌入式GUI應用開發(fā)。
Qt/Embedded是一個多平臺的C++圖形用戶界面開發(fā)工具包,它注重與能給用戶提供精美的圖形界面所需的所有元素,而且其開發(fā)過程是基于面向?qū)ο蟮木幊趟枷?,而且Qt/embedded支持真正的組建編程。
整個設(shè)計的軟件工程流程圖,如圖 7所示:
圖 7 系統(tǒng)的軟件流程圖
3.4 調(diào)試環(huán)境的搭建說明
根據(jù)前面的設(shè)計要求,本設(shè)計在調(diào)試時需要用到視頻錄像服務(wù)器。但由于實際條件的限制,故使用帶有千兆以太網(wǎng)口的高性能PC作為視頻服務(wù)器。
評論