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

正文內(nèi)容

基于嵌入式gui的工作日志記錄器的設(shè)計與開發(fā)-資料下載頁

2025-06-30 14:17本頁面

【導(dǎo)讀】師的指導(dǎo)下進(jìn)行的研究工作及取得的成果。盡我所知,除文中特別?;?qū)W歷而使用過的材料。對本研究提供過幫助和做出過貢獻(xiàn)的個人?;蚣w,均已在文中作了明確的說明并表示了謝意。部分或全部內(nèi)容。研究所取得的研究成果。論文不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫的成果作品。本人完全意識到本聲明的法律后果由本人承擔(dān)。子版,允許論文被查閱和借閱。本人授權(quán)大學(xué)可以將。影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。涉密論文按學(xué)校規(guī)定處理。又是嵌入式行業(yè)發(fā)展的重要支柱,嵌入式Linux系統(tǒng)可分為ETLinux,uCLinux,Debian,Mandrake,RedHat,和SuSE等等版本。GUI最重要的優(yōu)勢在于使用戶擺脫了在命令行提示符下與操作系統(tǒng)進(jìn)行。而本次設(shè)計的GUI應(yīng)用程序:工作日志記錄器。并且可以對所建立的工作日志記錄表進(jìn)行添加、查找、修改、刪除記錄等功。本文簡要介紹嵌入式Linux內(nèi)核以及應(yīng)用Qt/Embedded移植一個圖形界面。程序到MINI2440實(shí)驗板的過程。

  

【正文】 ,就可以了。 至此 QT/ 用于 ARM 的庫文件就交叉編譯完了。 安裝并配置 KDE 集成交叉編譯環(huán)境。 在 Nokia 發(fā)布了 QT 的 KDE 集成開發(fā)環(huán)境 QT Creater 以后, QT 在 Linux 下的開發(fā)與交叉編譯也已經(jīng)可以完全擺脫了使用命令進(jìn)行各項功能的操作。故而本次設(shè)計我也使用了 QT Creater 這個方便的 KDE 集成交叉編譯環(huán)境來編譯我要運(yùn)行到 ARM 上的應(yīng)用程序。 首先,當(dāng)然也是去 QT 官網(wǎng)上面去下載 QT CREATER 的 bin 文件。 之后照著 其官網(wǎng)上的說明安裝完畢。之后就是配置 creater 的交叉編譯環(huán)境。上面我已經(jīng)正確安裝了 的 arm庫文件,之后只要去 tools/options/qt4 選項卡下,選擇剛剛安裝的 ARM 庫的 qmake 文件,之后點(diǎn)擊 rebuild,當(dāng)看到 qmake路徑旁邊出現(xiàn)了一個綠色的小勾,這樣將 QT Creater 與我自己編譯的用于 ARM的庫文件就配置好了。 至此,用來交叉編譯在 ARM 上運(yùn)行的 QT4 程序的環(huán)境已經(jīng)基本完成了。 移植 LINUX 內(nèi)核 移植目的是讓 可以在 mini2440 上運(yùn)行。 首先,要使得 的缺省目標(biāo)平臺成為 ARM 的平臺。 修改總目錄下的 Makefile 原 export KBUILD_BUILDHOST := $(SUBARCH) ARCH ?= $(SUBARCH) CROSS_COMPILE ?= 改為 export KBUILD_BUILDHOST := $(SUBARCH) ARCH ?= arm CROSS_COMPILE ?= armlinux 其中, ARCH 是指定目標(biāo)平臺為 arm, CROSS_COMPILE 是 指定交叉編譯器,這里指定的是系統(tǒng)默認(rèn)的交叉編譯器,如要使用其它的,則要把編譯器的全路徑在這里寫出。 圖 42 Linux 內(nèi)核的 Makefiles 接下來,要測試一下 linux 的編譯是否能正常通過。 執(zhí)行: make s3c2410_defconfig 。使用缺省內(nèi)核配置文件 ,s3c2410_defconfig 是SMDK2440 的 缺省配置文件 make 。編譯時間較長 內(nèi)核移植的目標(biāo)平臺 首先,很關(guān)鍵的一 點(diǎn),內(nèi)核在啟動時,是通過 bootloader 傳入的機(jī)器碼(MACH_TYPE)確定應(yīng)啟動哪種目標(biāo)平臺的,友善之臂已經(jīng)為 mini2440 申請了自己的機(jī)器碼為 1999,它位于 ,如圖: 圖 43 內(nèi)核移植的機(jī)器碼 接下來, 我們注意到 文件,它其實(shí)就是國外愛好者為 mini2440 移植添加的主要內(nèi)容了,但我們不用它,把它直接刪除。 將 份。命名為 , 找到 MACHINE_START(S3C2440, SMDK2440),修改為 MACHINE_START(MINI2440, FriendlyARM Mini2440 development board)。 時鐘頻率 現(xiàn)在再來 修改系統(tǒng)時鐘源 , 在 ( 就是我們剛剛通過復(fù)制 得到的 )的第 160 行 static void __init smdk2440_map_io(void)函數(shù)中,把其中的 16934400(代表原 SMDK2440 目標(biāo)板上的晶振是 )改為 mini2440 開發(fā)板上實(shí)際使用的 120xx000(代表 mini2440 開發(fā)板上的晶振12MHz,元器件標(biāo)號為 X2)。 制作 MINI2440 平臺體系 因為我們要制作自己的 mini2440 平 臺體系,因此把 中所 有的 smdk2440 字樣改為 mini2440,可以使用批處理命令修改,在 vim 的命令模式下輸入: %s/smdk2440/mini2440/g 上面這句的意思是:把所有和“ smdk2440”匹配的字符串全部替換為“ mini2440”,前面的“ %s“代表字符串匹配,最后的“ g”代表 global,是全局的意思,輸入如圖 圖 44 內(nèi)核移植的目標(biāo)平臺 除此之外,還有一 個地方需要改動,在 mini2440_machine_init(void)函數(shù)中,把 smdk_machine_init()函數(shù)調(diào)用注釋掉,因為我們后面會編寫自己的初始化函數(shù),不需要調(diào)用 smdk2440 原來的,如上圖所示。 內(nèi)核的編譯測試 在 Linux 源代碼根目錄下執(zhí)行 make mini2440_defconfig 。使用 Linux 官方自帶的 mini2440 配置 make zImage 。編譯內(nèi)核,時間較長,最后會生成 zImage 重新編譯并把生成的內(nèi)核文件 zImage(位于 arch/arm/boot 目錄 )下到板子中,可以看到內(nèi)核已經(jīng)可以正常啟動了,但此時大部分硬件驅(qū)動還沒加,并且也沒有文件系統(tǒng),因此還無法登陸。 開發(fā)板文件系統(tǒng)的構(gòu)建 文件系統(tǒng)是操作系統(tǒng)的重要組成部分,用于控制對數(shù)據(jù)文件及設(shè)備的存取,提供對文件的分層組織形式、數(shù)據(jù)緩沖及文件存取權(quán)限的控制。根文件系統(tǒng)是 Linux 系統(tǒng)不可或缺的組件,在嵌入式 Linux 中,內(nèi)核在啟動期間進(jìn)行的最后操作之一就是安裝根文件系統(tǒng)。 Linux 系統(tǒng)中的文件不僅包括普通的文件和目錄,每個和設(shè)備相關(guān)的實(shí)際實(shí)體也都被映射為一個文件,例如磁盤、打印機(jī)、終端等 等,這樣 的設(shè)備文件又稱為特殊文件。所以, Linux 下的文件是操作系統(tǒng)服務(wù)和 設(shè)備的簡單又統(tǒng)一的接口,從某種意義上可以說, Linux 里的一切事物都是文件,下面就結(jié)合實(shí)際開發(fā)過程分析文件系統(tǒng)的構(gòu)造。在構(gòu)建文件系統(tǒng)前,需要首先進(jìn)行相關(guān)驅(qū)動的移植,例如 Nand Flash 驅(qū)動的完善、 LCD 驅(qū)動的移植、觸摸屏驅(qū)動的移植等等 [19]。 編譯 Busybox: Bosybox 是一個遵循 GPL v2 協(xié)議的開源項目,它在編寫過程總對文件大小進(jìn)行優(yōu)化,并考慮了系統(tǒng)資源有限 (比如內(nèi)存等 )的情況,使用 Busybox 可以自動生成根文件系 統(tǒng)所需的 bin、 sbin、 usr 目錄和 linuxrc 文件。 1. 解壓 busybox cd /mnt/hgfs/share tar –zxvf –C /opt/studyarm 進(jìn)入源碼,修改 Makefile 文件: cd /opt/studyarm/ 2. 修改: CROSS_COMPILE ?=armlinux //第 164 行 ARCH ?=arm //第 189 行 3. 配置 busybox 提示:友善之臂已經(jīng)在光盤中提供了 busybox 的源代碼包,在光盤 \linux 目錄中,文件名為: (用戶手冊 章節(jié)介紹了解壓安裝的方法),解壓后里面包含了友善之臂提供的缺省配置文件: fa_config(輸入命令“ cp .config”可以調(diào)用該配置 ),一般用戶直接使用缺省文件就 可以了,這樣生成的 busybox 和 root_qtopia 中的是完全一致的 [17]。 用于開發(fā)板的文件系統(tǒng): 在制作文件系統(tǒng)是時候,需要使用 mayaffs2image 制作映像工具,它是一個命令行的工 具,需要在終端中輸入命令: mkyaffs2image128M rootfs_qtopia_qt4 來使用。 在“ /opt/EmbedSky/”建立一個“ ”文件夾, 復(fù)制編譯出來的 busybox“ bin”的目錄、“ sbin”目錄、“ usr”目錄和“ linuxrc”到新建“ ”目錄下,然后新建“ dev”、“ etc”、“ home”、“ lib”、“ mnt”、“ opt”、“ proc”、“ root”、“ sys”、“ tmp”、“ var”和“ web”目 錄,同時在原有的“ usr”目錄下新建一個“ lib”和“ share”目錄。如下所示: 圖 45 嵌入式 Linux 的根文件目錄 在各個目錄中添加相應(yīng)的內(nèi)容: ( 1) dev 目錄: 其中 的內(nèi)容在內(nèi)核掛載完畢文件系統(tǒng)后,系統(tǒng)會使用 mdev自動建立。不過 mdev 是調(diào)用 init 進(jìn)程來啟動的,在使用 mdev 構(gòu)建 “dev”目錄前, init 進(jìn)程需要使用到 “/dev/console”和 “/dev/null”這兩個設(shè)備文件,所以,需要在制 作文件系統(tǒng)時靜態(tài)創(chuàng)建這兩個設(shè)備文件,方法如下: cd /opt/EmbedSky/mknod console c 5 1 mknod null c l 3 如果不創(chuàng)建這兩個設(shè)備文件,在文件系統(tǒng)啟動時會出現(xiàn)“ Warning: unable to open an initial console?!卞e誤。 ( 2) etc 目錄:用來存放系統(tǒng)的配置文件。 在 “etc/”目錄下面有如下常用的文件 : fstab:指明需要掛載的文件系統(tǒng) group:用戶組 inittab:init 進(jìn)程的 配置文件 shadow:使用 passwd 命令創(chuàng)建密碼時需要該文件的參與 passwd:密碼文件 profile:用戶環(huán)境配置文件 :添加了自動掛載和卸載 SD卡和 U 盤的腳本文件 :存放 DNS 信息的文件,訪問外網(wǎng)時需要 DNS 的信息 ( 3) home 目錄:存放用戶文件的目錄,建立一個名為 “sky”的目錄, sky 這個目錄需要將其設(shè)置權(quán)限為 777 或者將其用戶組設(shè)置為 sky,否則在使用 ftp 發(fā)送數(shù)據(jù)時會出現(xiàn)無法操作該目錄的情況,使用命令: chmod 777 home/sky 設(shè)置其 權(quán)限。 ( 4) lib 目錄:用來存放常用的庫文件,獲取庫文件的方法(從 的編譯器中提取庫); cd /opt/EmbedSky/ cp –f/opt/EmbedSky/*.so* lib –a rm –f lib/libwv* lib/libuniconf* 這里拷貝了常用的庫文件,如果需要特殊的庫,需要再從相應(yīng)的位置復(fù)制過來 ( 5) mnt 目錄:一般用來掛載的 U 盤等外設(shè),這 里建立兩個目錄 “udisk”和“sd”,分別用來掛載 U 盤和 SD 卡。 ( 6) “opt”目錄:用來保存 Qt 的相關(guān)目錄。 ( 7) “proc”目錄:提供一些目錄和虛擬文件系統(tǒng)。 ( 8) “root”目錄:超級用戶的目錄。 ( 9) “sys”目錄: Mdev 可能會在下面建立某些文件。 ( 10) “tmp”目錄:存放臨時文件的目錄。 ( 11) “var”目錄:存放臨時文件的目錄。 ( 12) “web”目錄:存放 web 服務(wù)器的相關(guān)文件目錄。 ( 13) “usr/bin/”目錄:拷貝相應(yīng)的 rz和 sz文件到該目錄下,以實(shí)現(xiàn)使用超級終端的 zmodem進(jìn)行接收和發(fā)送文件的功能,在開發(fā)板的串口終端使用方法如下: $rz 然后點(diǎn)擊右鍵打開 zmodem就可以向開發(fā)板發(fā)送文件了。 $sz filename 然后就可以從開發(fā)板向 pc 發(fā)送指定的文件。 到這里,文件系統(tǒng)的基本框架就大體完成了,然后使用制作 yaffs 的文件系統(tǒng)的軟件,把它做出 yaffs 文件系統(tǒng)格式的鏡像就可以使用了。 使用如下命令制作: cd /opt/EmbedSky mkyaffs2image128M 把制作好的鏡像拷到板子上,打開超級終端 , 在 文件系統(tǒng)中,需要添加 的庫,如下 圖 所示: 圖 46 初始化環(huán)境設(shè)置 其中 export 是設(shè)置 Linux 環(huán)境變量的函數(shù)。 If語句的作用:判斷是否有 /etc/pointercal 文件,如果是,則直接運(yùn)行 desktop1 程序,及自己寫的桌面程序,否則運(yùn)行觸摸屏校驗程序。 添加啟動腳本,部分如下所示: 圖 47 啟 動腳本文件 將制作完成的 yaffs2 文件系統(tǒng)直接拷到板子上即可 。 5 工作日志記錄器的設(shè)計 本次畢業(yè)設(shè)計我需要設(shè)計一個圖形界面的工作日志記錄器。工作日志記錄器,故名思議,就是一個記錄一天內(nèi)做了些什么事情的管理型的小軟件,同時這個小軟件能夠供自己方便的查閱。所以我決定用 QT 自帶的小型數(shù)據(jù)庫 QSqlite來保存工作數(shù)據(jù),并且能對這些數(shù)據(jù)進(jìn)行查找,刪除,修改等等簡單的操作。然后又鑒于 MINI2440 的 LCD 屏幕比較小,為了這個程序能適應(yīng)與這樣的屏幕,故而將程序的添加工作與查看修改工作分成了兩個窗口,也就是設(shè)計了一個多 窗口的圖形程序。使用 Qt 設(shè)計一個程序分為如下兩部: 1. 圖形用戶界面設(shè)計; 2. 應(yīng)用程序功能設(shè)計。 圖形用戶界面設(shè)計 首先,在 win xp 下安裝 QT sdk 應(yīng)用程序,一切按默認(rèn)設(shè)置即可。 然后,打開應(yīng)用程序, Ctrl+N 新建工程,工程名為 。在創(chuàng)建工程的時候,要勾選上 QSqlite 的數(shù)據(jù)庫選項。 然后添加各項文件,如下圖所示: 圖 51 應(yīng)用程序工程結(jié)構(gòu) 其中 mainwindow 為工作日志 記錄器的主窗口,而 mydialog1 為添加工作日志的添加窗口。 為了實(shí)現(xiàn)工作日志記錄器的顯示工作記錄表這一功能,所以需要在主窗口上設(shè)計一個用來顯示數(shù)據(jù)的插件。但是 QT Creater 也提
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1