freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于嵌入式gui的工作日志記錄器的設計與開發(fā)本科畢業(yè)設計(編輯修改稿)

2025-07-24 20:28 本頁面
 

【文章內容簡介】 問CPU,同時保證內核能及時地執(zhí)行硬件操作。內存管理模塊用于確保所有進程能夠安全地共享機器主內存區(qū),同時,內存管理模塊還支持虛擬內存管理方式,使得Linux支持進程使用比實際內存空間更多的內存容量,并可以利用文件系統(tǒng)把暫時不用的內存數(shù)據(jù)塊交換到外部存儲設備上去,當需要時再交換回來。文件系統(tǒng)模塊用于支持對外部設備的驅動和存儲,虛擬文件系統(tǒng)模塊通過向所有的外部存儲設備提供一個通用的文件接口,隱藏了各種硬件設備的不同細節(jié),從而提供并支持與其他操作系統(tǒng)兼容的多種文件系統(tǒng)格式。進程間通信模塊子系統(tǒng)用于支持多種進程間的信息交換方式。網(wǎng)絡接口模塊提供對多種網(wǎng)絡通信標準的訪問并支持許多網(wǎng)絡硬件[8]。3 嵌入式圖形用戶界面圖形用戶界面(Graphical User Interface,簡稱 GUI,又稱圖形用戶接口)是指采用圖形方式顯示的計算機操作用戶界面。與早期計算機使用的命令行界面相比,圖形界面對于用戶來說在視覺上更易于接受。 嵌入式GUI概述嵌入式GUI(Graphics User Interface)為嵌入式系統(tǒng)提供了一種應用于特殊場合的人機交互界面。嵌入式GUI要求簡單、直觀、可靠、占用資源小且反應快速,以適應系統(tǒng)硬件資源有限的條件。另外,由于嵌入式系統(tǒng)硬件本身的特殊性,嵌入式GUI應具備高度可移植性與可裁減性,以適應不同的硬件條件和使用需求。 總體來講,嵌入式GUI具備以下特點:體積小、運行時耗用系統(tǒng)資源小、上層接口與硬件無關、高度可移植、高可靠性、可配置[9]。 嵌入式GUI的分類目前在常用的嵌入式GUI領域,廣泛使用的有QT/Embedded、Microwindows和MiniGUI三種。由于嵌入式開發(fā)人員對實時嵌入式系統(tǒng)在理解上的不同,是的這些GUI系統(tǒng)在接口定義、體系結構、功能特性等方面存在很大差別,它們所采取的技術路線也有所不同。三種GUI優(yōu)缺點分析下面以形式總結以上說敘述的三種圖形用戶界面GUI的優(yōu)缺點:圖形用戶界面優(yōu)點缺點MiniGUI(1)輕量級的圖形用戶界面支持(2)系統(tǒng)圖形抽象層(3)多字體和多字符集支持(4)兩個不同架構的版本Minithread和Minilite(1)控件功能不夠豐富(2)C代碼,擴展不利Microwindows(1)開源項目(1)典型的基于C/S體系結構(3)最底層是面向圖形輸出和鍵盤、鼠標或觸摸屏的驅動程序,中間層提供底層硬件抽象接口(1)無任何硬件加速能力(2)圖形引擎中存在許多低效算法,同時未經(jīng)任何優(yōu)化(3)代碼質量差Qt/Embedded隨意設置程序界面的外觀非常容易的根據(jù)硬件特性定制有針對手機的Qtopia應用套件商用客戶較多當移植Qt/Embedded程序到不同平臺時,只需要重新編譯代碼,而不需要對代碼進行修改程序本地化很容易程序與Java集成很容易代碼量過大,最好用于flash大的智能手機結構過于復雜,很難進行底層太多的擴充商用需要一定的授權費用表格 31 三種GUI優(yōu)缺點分析綜上對比,不難看出,Qt/Embedded是一個專門為小型設備提供圖形用戶界面的應用框架和窗口系統(tǒng)。Qt/Embedded是高端嵌入式設備PDA及手機的主流開發(fā)工具。作為一項成熟的技術,KDE桌面系統(tǒng)對于嵌入式窗口系統(tǒng)的設計有很大參考價值,Qtopia給嵌入式窗口系統(tǒng)提供了很好的框架,提供了豐富的窗口小部件(widgets),并且還支持窗口部件的定制,因此它可以為用戶提供漂亮的圖形界面。Qt是KDE等項目使用GUI支持庫,所以有許多基于Qt的X Window程序可以非常方便地移植到Qt/Embedded版本上[10][11][12]。4 嵌入式GUI的開發(fā)軟硬件環(huán)境本章主要介紹設計基于GUI的嵌入式工作日志記錄器所用到的軟件和硬件平臺,其中硬件主要是MINI2440開發(fā)板、三星S3C2440處理器而軟件主要是QT集成開發(fā)環(huán)境QT sdk。此設計的主要工作是在Linux(本次設計所使用的Linux發(fā)行版為紅帽的桌面系統(tǒng)Fedora9)下ARM交叉環(huán)境的搭建,在Windows xp下QT SDK的安裝以及設計編寫工作日志記錄器的主程序。Linux內核的移植,文件系統(tǒng)的構建(包括能在ARM上運行的QT/E )與移植。 硬件平臺簡介Mini2440 是一款真正低價實用的ARM9 開發(fā)板,是目前國內性價比最高的一款學習板;它采用Samsung S3C2440 為微處理器,并采用專業(yè)穩(wěn)定的CPU 內核電源芯片和復位芯片來保證系統(tǒng)運行時的穩(wěn)定性。mini2440 的PCB 采用沉金工藝的四層板設計,專業(yè)等長布線,保證關鍵信號線的信號完整性,生產(chǎn)采用機器貼片,批量生產(chǎn);出廠時都經(jīng)過嚴格的質量控制。 開發(fā)板主要資源SDRAM存儲系統(tǒng)Mini2440 使用了兩片外接的32M bytes 總共64M bytes 的SDRAM 芯片(型號為:HY57V561620FTP/MT48LC16M16A2),一般稱之為內存,它們并接在一起形成32bit 的總線數(shù)據(jù)寬度,這樣可以增加訪問的速度;因為是并接,故它們都使用了nGCS6 作為片選,CPU 手冊,這就決定了它們的物理起始地址為0x30000000。電源系統(tǒng)及接口本開發(fā)板的電源系統(tǒng)比較簡單,直接使用外接的5V 電源,通過降壓芯片產(chǎn)生整個系統(tǒng)所需要的三種電壓:、。請注意,本開發(fā)板并非面向手持移動設備設計,因此它并不具備完善的電源管理電路。整個系統(tǒng)的電源通斷是由S1 撥動開關控制的,它不能通過軟件實現(xiàn)開關機。為了方便用戶外接其他電源,我們還設計了一個電源接口 CON8, 間距的單排插座,中間均為“地”,兩側均為5V。注意,這兩個5V 并非是相通的,其中一個連接了外部電源的5V,另外一個則連接了經(jīng)過撥動開關S1 之后的5V。串口S3C2440 本身總共有3 個串口UART0、2,其中UART0,1 可組合為一個全功能的串口,在大部分的應用中,我們只用到3 個簡單的串口功能(本開發(fā)板提供的Linux 和WinCE驅動也是這樣設置的),即通常所說的發(fā)送(TXD)和接收(RXD),它們分別對應板上的CONCONCON3,這3 個接口都是從CPU 直接引出的,是TTL 電平。為了方便用戶使用,其中UART0 做了RS232 電平轉換,它們對應于COM0,可以通過附帶的直連線與PC 機互相通訊。USB接口本開發(fā)板具有兩種USB 接口,一個是USB Host,它和普通PC 的USB 接口是一樣的,可以接USB 攝像頭、USB 鍵盤、USB 鼠標、優(yōu)盤等常見的USB 外設,另外一種是USB Slave,我們一般使用它來下載程序到目標板,當開發(fā)板裝載了WinCE 系統(tǒng)時,它可以通過ActiveSync軟件和Windows 系統(tǒng)進行同步,當開發(fā)板裝載了Linux 系統(tǒng)時,目前尚無相應的驅動和應用[13][17]。為了方便用戶通過程序控制USB Slave 和PC 的通斷,我們設置了USB_EN 信號,如圖,它使用的CPU 資源為GPC5。我們將提更加廣泛的 USB Host 外設應用,請經(jīng)常留意我們網(wǎng)站的更新信息。 S3C2440處理器簡介S3C2440AL是16/32位精簡指令集微處理器,是為應用于小型掌上設備和高性價比、低功耗、高性能的嵌入式系統(tǒng)應用而提供的微控制。S3C2440使用了ARM920T內核,它功耗低,非常適合需要控制成本和功耗應用的場合。ARM920T實現(xiàn)了MMU、AMBA總線及Harvard緩存結構,每行8字長度的獨立16K指令緩存和數(shù)據(jù)緩存。S3C2440將系統(tǒng)組成縮減至最小,芯片上集成的功能包括:分開的16K指令/數(shù)據(jù)緩存、SDRAM控制器、LCD控制器、4通道DMA、3通道UART、IIC總線、IIS總線、SD主機接口、PWM定時器、看門狗、片上PLL時鐘發(fā)生器、8通道10位AD控制器和觸摸屏接口、攝像頭接口以及帶日歷函數(shù)的實時時鐘。S3C2440的主頻為400MHZ,最高頻率可達533MHz,且功耗只有mW級,是理想的車載電腦的主選芯片。S3C2440具有各種特性,包括:NAND Flash啟動引導、Cache存儲器、時鐘電源管理、中斷控制器、具有脈沖帶寬調制功能的定時器、RTC實時時鐘、通用I/O端口、DMA控制器、LCD控制器STN LCD顯示特性、TFT彩色顯示屏、UART、A/D轉換和觸摸屏接口等等。S3C2440AL的資源包括:1個LCD控制器、SDRAM控制器、NAND FLASH控制器、3路UART通道、4路DMA通道、4個具有PWM功能的計時器和一個內部時鐘、8通道的10位ADC、8通道10位AD控制器、IISBUS接口、IICBUS接口、2個USB主機接口、1個USB設備接口、SD接口、MMC卡接口、看門狗計數(shù)器、117位通用I/O口和24位外部中斷源、攝像頭接口和觸摸屏接口。體系結構:為手持設備和通用嵌入式應用提供片上集成系統(tǒng)解決方案;16/32 位RISC體系結構和ARM920T內核強大的指令集;加強的ARM體系結構MMU用于支持WinCE,EPOC 32和Linux;指令高速存儲緩沖器(ICache),數(shù)據(jù)高速存儲緩沖器(DCache),寫緩沖器和物理地址TAG RAM,減少主存帶寬和響應性帶來的影響;采用ARM920T CPU內核支持ARM調試體系結構;內部高級微控制總線(AMBA)體系結構(,AHB/APB)。系統(tǒng)管理器:支持大/小端方式;支持高速總線模式和異步總線模式;尋址空間每bank 128M字節(jié);支持可編程的每bank 8/16/32位數(shù)據(jù)總線帶寬;從bank 0到bank 6都采用固定的bank起始尋址;bank7具有可編程的bank的起始地址和大小;8個存儲器bank;所有的存儲器bank都具有可編程的操作周期;支持外部等待信號延長總線周期;支持掉電式的SDRAM自刷新模式;支持各種型號的ROM引導[18]。 軟件開發(fā)環(huán)境介紹完硬件環(huán)境之后,要實現(xiàn)一個軟件的開發(fā)也必須得有相應的軟件開發(fā)環(huán)境,本次開發(fā)環(huán)境的搭建主要包括:1. 操作系統(tǒng)的選擇及安裝;2. 交叉編譯環(huán)境的搭建; 操作系統(tǒng)的選擇及安裝Linux發(fā)行版的選擇:我嘗試了幾種LINUX發(fā)行版的操作系統(tǒng)( lts,Centos5,F(xiàn)edora9,F(xiàn)edora10)Fedora 9 經(jīng)過比較簡單的安裝和設置,依然可以使用root 用戶登錄(大多數(shù)開發(fā)均需要此用戶權限),F(xiàn)edora 10 則需要經(jīng)過稍微復雜的設置才能使用root。并且按照我嘗試的步驟安裝Fedora 9,不再需要其他補丁之類的繁瑣設置(ubuntu 就需要經(jīng)常這樣更新設置,并且ubuntu跟很多常用的發(fā)行版linux在很多設置方面有些許的不同,所以給像我這樣的初學者的學習帶來很大的困擾,Centos5雖然同為紅帽集團的LINUX,但是它所面向的是服務器商業(yè)的應用,對很多常用的程序員所要使用到的庫的支持都不行,特別是缺少tslib的支持,現(xiàn)在網(wǎng)上能找到的tslib對QT/E的支持都有些問題,故而放棄),因此我認為Fedora 9 是最適合初學者的開發(fā)平臺。首先下載Fedora 9 dvd iso文件并刻錄成光盤(自己用來開發(fā)的電腦配置太差,如果再用虛擬機的話編譯庫的時候時間會非常慢,而且對虛擬機的穩(wěn)定性總是不放心,故還是使用雙系統(tǒng)即win xp+Fedora 9的開發(fā)環(huán)境)。首先語言選中文,鍵盤布局選美式鍵盤,網(wǎng)絡設置用默認的就成,以下就把幾個比較重要的地方講解下。設置根用戶的密碼,就是在進入系統(tǒng)時用戶名輸入root,之后要輸入的密碼,很重要,必須設置,至少六位以上,之后也基本上只要next就可以了,直到讓你定制系統(tǒng)時,選擇現(xiàn)在定制。最主要的就是要在用途中勾選上程序開發(fā)這一項,這個選項意味著當你安裝完系統(tǒng)以后便會有了本次設計所需要的庫而不需要額外的別的庫文件。安裝完重啟即可。至此Fedora 9的安裝就結束了,以root用戶進入系統(tǒng)后,就可以開始配置交叉編譯環(huán)境。 交叉編譯環(huán)境的搭建在一種計算機環(huán)境中運行的編譯程序,能編譯出在另外一種環(huán)境下運行的代碼,我們就稱這種編譯器支持交叉編譯。這個編譯過程就叫交叉編譯。簡單地說,就是在一個平臺上生成另一個平臺上的可執(zhí)行代碼。這里需要注意的是所謂平臺,實際上包含兩個概念:體系結構(Architecture)、操作系統(tǒng)(Operating System)。同一個體系結構可以運行不同的操作系統(tǒng);同樣,同一個操作系統(tǒng)也可以在不同的體系結構上運行。 交叉編譯這個概念的出現(xiàn)和流行是和嵌入式系統(tǒng)的廣泛發(fā)展同步的。我們常用的計算機軟件,都需要通過編譯的方式,把使用高級計算機語言編寫的代碼(比如C代碼)編譯(pile)成計算機可以識別和執(zhí)行的二進制代碼。 我們使用PC平臺上的Windows工具開發(fā)針對Windows本身的可執(zhí)行程序,這種編譯過程稱為native pilation,中文可理解為本機編譯。然而,在進行嵌入式系統(tǒng)的開發(fā)時,運行程序的目標平臺通常具有有限的存儲空間和運算能力,比如常見的 ARM 平臺,其一般的靜態(tài)存儲空間大概是16到32MB,而CPU的主頻大概在100MHz到500MHz之間。這種情況下,在ARM平臺上進行本機編譯就不太可能了,這是因為一般的編譯工具鏈(pilation tool chain)需要很大的存儲空間,并需要很強的CPU運算能力。為了解決這個問題,交叉編譯工具就應運而生了。通過交叉編譯工具,我們就可以在CPU能力很強、存儲控件足夠的主機平臺上(比如PC上)編譯出針對其他平臺的可執(zhí)行程序。所以進行嵌入式開發(fā),搭建交叉編譯環(huán)境是必不可少的步驟。要進行交叉編譯,我們需要在主機平臺上安裝對應的交叉編譯工具鏈(cross pilation tool chain),然后用這個交叉編譯工具鏈編譯我們的源代碼,最終生成可在目標平臺上運行的代碼。在 Linux 平臺下,要為開發(fā)板編譯內核,圖形界面Qtopia,bootloader,還有其他一些應用程序,均需要交叉編譯工具鏈。之前的系統(tǒng),要使用不同的編譯器版本才能正常編譯各個部分,因此要在開發(fā)過程不斷切換設置,這十
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1