【正文】
上海電力學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 題 目: 基于QT的電子畫板功能的實(shí)現(xiàn) 院 系: 計(jì)算機(jī)與信息工程學(xué)院 專業(yè)年級: 2007電子科學(xué)與技術(shù) 學(xué)生姓名: 王思聰 學(xué)號: 20072682 指導(dǎo)教師: 金一鳴 2011年6月15日 基于QT的電子畫板功能的實(shí)現(xiàn)摘要 越來越多的嵌入式終端需要一個(gè)圖形用戶界面(GUI),良好的人機(jī)交互界面是嵌入式系統(tǒng)設(shè)計(jì)的一個(gè)關(guān)鍵技術(shù),尤其是在嵌入式手持設(shè)備中,對嵌入式終端的實(shí)用性、美觀性和視聽娛樂性提出了更高的要求。而電子畫板以其實(shí)用性和良好的觀賞性逐漸成為嵌入式設(shè)備中不可或缺的組成部分。開發(fā)基于嵌入式終端的界面美觀、功能豐富、交互性好的電子畫板,具有一定的實(shí)用意義和價(jià)值。本文的目標(biāo)是設(shè)計(jì)和實(shí)現(xiàn)嵌入式終端下的電子畫板。論文首先介紹了Linux的優(yōu)點(diǎn)和QT開發(fā)環(huán)境的搭建,著重分析了QT在軟件開發(fā)中的編程機(jī)制,并根據(jù)嵌入式應(yīng)用的特點(diǎn)對嵌入式終端下的電子畫板進(jìn)行了設(shè)計(jì)需求分析、具體界面的設(shè)計(jì)和整體結(jié)構(gòu)的設(shè)計(jì)。本文根據(jù)電子畫板的主要功能,設(shè)計(jì)并實(shí)現(xiàn)了電子畫板的相關(guān)基本功能,如:新建、打開、刪除、圖片編輯、放大、縮小、還原、旋轉(zhuǎn)和拉伸等。最后運(yùn)行結(jié)果符合設(shè)計(jì)要求,方案可行。關(guān)鍵詞 嵌入式Linux QT 圖形用戶界面 電子畫板 mini2440 The electronic drawing board function realization based on QTAbstract More and more embbeded Embedded Terminal need graphics user interface(GUI). A good HumanComputer Interaction interface is the key technology of embedded system design. Higher demands of the practicality, aesthetics and audiovisual entertainment of embedded terminal are needed, especially in embbeded system handheld device. Electronic drawing board is being an integral part of embedded device for their pracicality and good viewing. It has some practical significance and value to develop a Electronic drawing board with beautiful interface, rich functions and good interaction based on embedded aim of this paper is to design and implement a Electronic drawing board in the embeded terminal environment. This paper presented the advantage of Linux and the building of QT developing environment, focused on the programming mechanism of developing software with QT. It analysed the needs of the design, designed the specific interface and overall structure of Electronic drawing board in the embeded terminal environment according to features of embedded project designed and implemented the relevant functions of Electronic drawing board, such as new file、open file 、edit、enlarge 、minify、restore Rotate、stretch the picture and so on .Finally, the results meet the design requirements.Key words Embedded Linux QT GUI Electronic drawing board mini2440目錄1 引言 1 研究背景 1 研究目的和意義 32 嵌入式系統(tǒng)和嵌入式Linux 3 嵌入式系統(tǒng)概述 4 嵌入式Linux的特點(diǎn)和優(yōu)勢 5 常見嵌入式Linux系統(tǒng)優(yōu)缺點(diǎn) 7 Redhat系列優(yōu)缺點(diǎn) 7 Debian系列優(yōu)缺點(diǎn) 7 其他版本優(yōu)缺點(diǎn) 83 QT技術(shù) 9 QT主要特性 9 QT編程機(jī)制簡介 9 QT系統(tǒng)的信號與槽機(jī)制簡介 9 QT元對象系統(tǒng) 11 QT Creator設(shè)計(jì)軟件概述 124 開發(fā)軟硬件環(huán)境介紹 13 開發(fā)板mini2440簡介 13 Mini2440開發(fā)板圖示及規(guī)格 13 開發(fā)板主要電源系統(tǒng)及接口電路原理 15 CPU處理器Samsung S3C2440A概述 16 S3C2440A集成功能 17 S3C2440A體系結(jié)構(gòu) 18 S3C2440A系統(tǒng)管理器 185 虛擬機(jī)技術(shù) 18 虛擬機(jī)應(yīng)用概述 19 常見虛擬機(jī)軟件的優(yōu)缺點(diǎn) 19 虛擬機(jī)vmware優(yōu)缺點(diǎn) 19 虛擬機(jī)win4lin(9X)優(yōu)缺點(diǎn) 20 虛擬機(jī)wine/winx優(yōu)缺點(diǎn) 206 電子畫板功能設(shè)計(jì)與實(shí)現(xiàn) 20 電子畫板需求設(shè)計(jì) 21 電子畫板界面設(shè)計(jì) 22 電子畫板菜單欄界面設(shè)計(jì) 22 電子畫板側(cè)邊繪圖工具欄及主界面設(shè)計(jì): 23 電子畫板主要功能實(shí)現(xiàn) 24 添加畫布 24 實(shí)現(xiàn)涂鴉的功能 27 實(shí)現(xiàn)文件菜單功能 29 實(shí)現(xiàn)編輯菜單功能 30 電子畫板功能演示 33 構(gòu)建交叉編譯環(huán)境與程序下載 34謝辭 39參考文獻(xiàn) 401 引言 近年來,隨著計(jì)算技術(shù)、通信技術(shù)的飛速發(fā)展,特別是互聯(lián)網(wǎng)的迅速普及和3C(計(jì)算機(jī)、通信、消費(fèi)電子)合一的加速,微型化和專業(yè)化成為發(fā)展的新趨勢,嵌入式產(chǎn)品成為信息產(chǎn)業(yè)的主流。Linux從1991年問世到現(xiàn)在,短短的十幾年時(shí)間已經(jīng)發(fā)展成為功能強(qiáng)大、設(shè)計(jì)完善的操作系統(tǒng)之一;可運(yùn)行在X8Alpha、Sparc、MIPS、PPC、Motorola、NEC、ARM等多種硬件平臺,而且開放源代碼,可以定制;可與各種傳統(tǒng)的商業(yè)操作系統(tǒng)分庭抗?fàn)?。越來越多的企業(yè)和研發(fā)機(jī)構(gòu)都轉(zhuǎn)向嵌入式Linux的開發(fā)和研究上,在新興的嵌入式操作系統(tǒng)領(lǐng)域內(nèi)也獲得了飛速發(fā)展。 研究背景 嵌入式產(chǎn)品的發(fā)展,往往要求嵌入式操作系統(tǒng)有網(wǎng)絡(luò)和圖形的功能。利用源代碼開放的Linux搭建的嵌入式操作系統(tǒng),由于強(qiáng)大的網(wǎng)絡(luò)功能和低成本,近來得到了越來越多的應(yīng)用。其能夠提供全功能的桌面計(jì)算,定制非常方便并且支持大多數(shù)嵌入式系統(tǒng)上使用的芯片,包括Strong ARM,MIPS和Power PC等。在嵌入式Linux操作系統(tǒng)上使用一個(gè)功能完備的輕量級、高性能、高可靠、可配置的GUI系統(tǒng)成為可行的解決方案。全過程自動(dòng)化產(chǎn)品制造、大范圍電子商務(wù)活動(dòng)、高度協(xié)同科學(xué)實(shí)驗(yàn)以及現(xiàn)代化家庭起居,為嵌入式產(chǎn)品造就了嶄新而巨大的商機(jī)。除了溝通信息高速公路的交換機(jī)、路由器和Modem,構(gòu)建CIMS所需的DCS和機(jī)器人以及規(guī)模較大的家用汽車電子系統(tǒng)。最有量產(chǎn)效益和時(shí)代特征的嵌入式產(chǎn)品應(yīng)數(shù)因特網(wǎng)上的信息家電(Internet Appliances),如Web可視電話、Web游戲機(jī)、Web PDA(電子商務(wù)、商務(wù)通)、WAP電話手機(jī)、以及多媒體產(chǎn)品,如STB(電視機(jī)頂盒)、DVD播放機(jī)、電子閱讀機(jī)。以信息家電為代表的互聯(lián)網(wǎng)時(shí)代嵌入式產(chǎn)品,不僅為嵌入式市場展現(xiàn)了美好前景,注入了新的生命;同時(shí)也對嵌入式系統(tǒng)技術(shù),特別是軟件技術(shù)提出新的挑戰(zhàn)。這主要包括:支持日趨增長的功能密度、靈活的網(wǎng)絡(luò)聯(lián)接、輕便的移動(dòng)應(yīng)用和多媒體的信息處理,此外,當(dāng)然還需對付更加激烈的市場競爭。主要從以下幾個(gè)方面體現(xiàn)出來:(1)嵌入式應(yīng)用軟件的開發(fā)需要強(qiáng)大的開發(fā)工具和操作系統(tǒng)的支持 隨著因特網(wǎng)技術(shù)的成熟、帶寬的提高,ICP和ASP在網(wǎng)上提供的信息內(nèi)容日趨豐富、應(yīng)用項(xiàng)目多種多樣。像電話手機(jī)、電話座機(jī)及電冰箱、微波爐等嵌入式電子設(shè)備的功能不再單一,電氣結(jié)構(gòu)也更為復(fù)雜。為了滿足應(yīng)用功能的升級,設(shè)計(jì)師們一方面采用更強(qiáng)大的嵌入式處理器如32位、64位RISC芯片或信號處理器DSP增強(qiáng)處理能力;同時(shí)還采用實(shí)時(shí)多任務(wù)編程技術(shù)和交叉開發(fā)工具技術(shù)來控制功能復(fù)雜性,簡化應(yīng)用程序設(shè)計(jì)、保障軟件質(zhì)量和縮短開發(fā)周期。(2)聯(lián)網(wǎng)成為必然趨勢 為適應(yīng)嵌入式分布處理結(jié)構(gòu)和應(yīng)用上網(wǎng)需求,面向21世紀(jì)的嵌入式系統(tǒng)要求配備標(biāo)準(zhǔn)的一種或多種網(wǎng)絡(luò)通信接口。針對外部聯(lián)網(wǎng)要求,嵌入設(shè)備必需配有通信接口,相應(yīng)需要TCP/IP協(xié)議簇軟件支持;由于家用電器相互關(guān)聯(lián)(如防盜報(bào)警,燈光能源控制,影視設(shè)備和信息終端交換信息)及實(shí)驗(yàn)現(xiàn)場儀器的協(xié)調(diào)工作等要求,新一代嵌入式設(shè)備還需具備IEEE139USB、CAN、Bluetooth或IrDA通信接口,同時(shí)也需要提供相應(yīng)的通信組網(wǎng)協(xié)議軟件和物理層驅(qū)動(dòng)軟件。為了支持應(yīng)用軟件的特定編程模式,如Web或無線Web編程模式,還需要相應(yīng)的瀏覽器,如HTML、WML等。(3)支持小型電子設(shè)備實(shí)現(xiàn)小尺寸、微功耗和低成本 為滿足這種特性,要求嵌入式產(chǎn)品設(shè)計(jì)者相應(yīng)降低處理器的性能,限制內(nèi)存容量和復(fù)用接口芯片。這就相應(yīng)提高了對嵌入式軟件設(shè)計(jì)技術(shù)要求。如,選用最佳的編程模型和不斷改進(jìn)算法。(4)提供精巧的多媒體人機(jī)界面 嵌入式設(shè)備之所以為億萬用戶樂于接受,重要因素之一是它們與使用者之間的親和力,自然的人機(jī)交互界面,如司機(jī)操縱高度自動(dòng)化的汽車主要還是通過習(xí)慣的方向盤、腳踏板和操縱桿。人們與信息終端交互要求以GUI屏幕為中心的多媒體界面。手寫文字輸入、語音撥號上網(wǎng),收發(fā)電子郵件以及彩色圖形、圖像已取得初步成效[1][2]。 研究目的和意義 雖然市場上現(xiàn)在已經(jīng)有了眾多的優(yōu)秀的GUI應(yīng)用軟件,但隨著近年來計(jì)算機(jī)技術(shù)的迅速發(fā)展,當(dāng)新硬件、新技術(shù)出現(xiàn)時(shí),計(jì)算機(jī)的體系結(jié)構(gòu)、指令系統(tǒng)和操作系統(tǒng)都可能發(fā)生相應(yīng)的改變,這勢必會導(dǎo)致一部分應(yīng)用軟件在新環(huán)境下無法正常運(yùn)行。如果舍棄原有軟件而重新開發(fā),將會耗費(fèi)大量的人力和資金,而且浪費(fèi)了許多成熟的軟件成果。而QT在源代碼級上實(shí)現(xiàn)了跨平臺特性,極大的支持了跨平臺通用軟件的開發(fā)。QT可以用同一個(gè)源程序在不同平臺上編譯鏈接,生成目標(biāo)代碼,并取得相同的運(yùn)行效果,這種技術(shù)稱之為“一次編寫,隨處編譯”,利用這種方法充分實(shí)現(xiàn)了程序的跨平臺運(yùn)行。這種基于源代碼的跨平臺特性不僅解決了性能的問題,而且可以發(fā)揮各個(gè)平臺的優(yōu)勢,充分利用每個(gè)平臺自身的特點(diǎn);并且即可以在新環(huán)境下實(shí)現(xiàn)原有軟件的功能和特點(diǎn),減少開發(fā)費(fèi)用,還可以改進(jìn)原有軟件的不足,增加新的需求,從而提高軟件的質(zhì)量,延長軟件生命期。 針對嵌入式產(chǎn)品的高度個(gè)性化,其外觀、與用戶交互的界面千差萬別的特點(diǎn),故而系統(tǒng)的設(shè)計(jì)目標(biāo)是意在打造一個(gè)能在嵌入式終端運(yùn)行、通用的、可以方便的支持各種控件、各種圖形格式,具有體積小、可裁剪、可移植的這樣一個(gè)面向嵌入式的應(yīng)用程序系統(tǒng),使各種嵌入式設(shè)備也同樣能具有美觀的用戶界面,相對比較豐富的功能,操作起來簡單而又直觀[3]。 本文通過對嵌入式Linux和QT的分析,在嵌入式QT的基礎(chǔ)上,開發(fā)了面向嵌入式終端的電子畫板應(yīng)用軟件。電子畫板不僅支持新建、編輯、等功能,還支持圖片的打開,另外還有如放大、縮小、旋轉(zhuǎn)等各種方式下的圖片瀏覽。它們體積小,移植方便,適用于掌上電腦、智能電話及一些高端的嵌入式設(shè)備中。此外它作為一種小型GUI解決方案,可用于那些對GUI大小要求苛刻的各種應(yīng)用系統(tǒng)中。 2 嵌入式系統(tǒng)和嵌入式Linux 嵌入式系統(tǒng),就是以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可剪裁、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)具有面向用戶、面向產(chǎn)品、面向應(yīng)用的特征。和通用計(jì)算機(jī)不同,嵌入式系統(tǒng)是針對具體應(yīng)用的專用系統(tǒng),一般具有成本敏感性,它的硬件和軟件都必須高效率地設(shè)計(jì),量體裁衣、去除冗余。好的嵌入式系統(tǒng)是完成目標(biāo)功能的最小系統(tǒng)。 嵌入式系統(tǒng)概述 綜觀嵌入式系統(tǒng)的發(fā)