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

正文內(nèi)容

基于物聯(lián)網(wǎng)技術(shù)的智能家居嵌入式系統(tǒng)設(shè)計_本科畢業(yè)設(shè)計-閱讀頁

2025-07-25 12:20本頁面
  

【正文】 個部分 [1]: (1) 引導(dǎo)加載程序:其中包括內(nèi)部 ROM 中的固化啟動代碼和 Bootloader 兩部分 。 (2) Linux 內(nèi)核:通過 Bootloader 傳遞內(nèi)核參數(shù)來引導(dǎo)加載內(nèi)核。 (4) 用戶應(yīng)用程序:用戶自定義的應(yīng)用程序,它們也存儲在文件系統(tǒng)當(dāng)中,當(dāng)然在用戶應(yīng)用程序以及內(nèi)核層之間還可能包含嵌入式用戶界面 GUI。 圖 21 嵌入式 Linux 系統(tǒng)中的典型分區(qū)結(jié)構(gòu) 根據(jù)上述嵌入式 Linux 系統(tǒng)的結(jié)構(gòu)組成, 基于 物聯(lián)網(wǎng) 的智能家居嵌入式系統(tǒng)的設(shè)計,需要構(gòu)建嵌入式系統(tǒng)開 發(fā)環(huán)境,這其中包括 Bootloader 的移植、 Linux 內(nèi)核裁剪、Rootfs 根文件系統(tǒng)制作、 QT4 GUI 的移植、 Sqlite3 嵌入式數(shù)據(jù)庫的移植、 Boa 嵌入式服務(wù)器的搭載等。 現(xiàn)如今, bootloader 的 種類非常多 , 一般比較常用的 bootloader[1], 在 x86 架構(gòu)上有GRUB、 LILO 等,而在 ARM 架構(gòu)上則有 Vivi、 U_Boot 等 , 其適用性 如 表 21 所示。支持多種操作系統(tǒng),比如 Linux、 NetBSD、 VxWorks、 Windows 等。 S3C2440 與 S3C2410 的主要區(qū)別是 [2]2440 的主頻更高,在接口方面,增加了攝像頭接口和 AC97 音頻接口,在寄存器方面, NAND FLASH 控制寄存器有較大變化,另外,芯片的時鐘控制寄存器也有一定的變化,其他寄存器是兼容的。如果測試編譯通過,說明編譯環(huán)境的基本的開發(fā)板代碼沒有問題,由于編譯的藍本是基于 SBC2410 的,接下來的工作主要是按照代碼的執(zhí)行流程來針對 mico2440 做相應(yīng)的修改; 步驟三:進入 /cpu/arm920t/ 初始化代碼,針對 CPU 頻率的不同修改初始化設(shè)置,針對寄存器配置的不同,作相應(yīng)的調(diào)整與修改; 步驟四:在 UBoot 啟動的其一階段,初始化 Nand Flash 控制器,起到代碼重定向的作用,但是在第二階段的 start_armboot 函數(shù)還是需要再次初始化 Nand Flash 控制器,真正啟動 U_boot,2410 與 2440 Nand Flash 控制器上的寄存器和啟動流程差別很大,需要修改 Nand Flash 底層驅(qū)動代碼。 基于物聯(lián)網(wǎng)技術(shù)的智能家居嵌入式系統(tǒng)設(shè)計 5 Linux內(nèi)核裁剪 相比于 內(nèi)核, 內(nèi)核支持更多的平臺架構(gòu),采用新的調(diào)度算法,使進程間的切換更加高效。在虛擬機下建立內(nèi)核源碼樹,對于 ARM 架構(gòu)的 S3C2440,與其體系相關(guān)的內(nèi)核代碼在 arch/arm 目錄下,在后面相關(guān)的移植裁剪工作,也主要是針對此目錄下的文件。 下面主要是針對與平臺相關(guān)的驅(qū)動,手工定制 Linux 內(nèi)核。 圖 22 主配置菜單界面 (2) LCD 驅(qū)動配置界面 在主菜單界面,進入 Device DriversGraphic SupportLCD Select 選擇如 圖 23所示的 LCD 型號支持。 圖 24 觸摸屏驅(qū)動配置界面 (4) USB 鼠標(biāo)鍵盤配置界面 在主菜單界面,進入 Device DriversHID Device USB Device 選擇如 圖 25 所示的 USB 鼠標(biāo)鍵盤配置支持。 基于物聯(lián)網(wǎng)技術(shù)的智能家居嵌入式系統(tǒng)設(shè)計 7 圖 25 USB 鼠標(biāo)鍵盤配置界面 圖 26 USB 攝像頭驅(qū)動配置界面 (6) DM9000 網(wǎng)卡驅(qū)動配置界面 在主菜單界面,進入 Networking SupportNetworking Options,缺省配置一般網(wǎng)絡(luò)支持,比如 TCP 等,進入 Device DriversNetwork Device supportEther( 10M or 100M)選擇如 圖 27 所示的網(wǎng)卡驅(qū)動配置支持。 基于物聯(lián)網(wǎng)技術(shù)的智能家居嵌入式系統(tǒng)設(shè)計 8 圖 27 DM9000 網(wǎng)卡驅(qū)動配置界面 圖 28 AC97 音頻驅(qū)動配置界面 (8) 串口驅(qū)動配置界面 在主菜單界面,進入 Character devicesSerial drivers 選擇如 圖 29 所 示的串口配置支持。進入 File systemsNetwork filesystem, 選擇 如 圖 211所示 的 NFS 文件系統(tǒng)支持。 事實上 根文件系統(tǒng)就是被掛載在目錄 “/”上,在根文件系統(tǒng)目錄下又有其相應(yīng)的各個目錄、文件, 比如 /etc、 /mnt、 /dev、 /lib 等,其他分區(qū)掛載在 /mnt 目錄下 ,比如 CDRom等 。實際上,除了這幾種確實存儲在存儲分區(qū)上的文件系統(tǒng)類型以外, Linux 還有幾種虛擬的文件系統(tǒng),比如 sysfs、 proc 等,與實 際存在的文件系統(tǒng)區(qū)別是,他們的目錄文件并不存儲在實際的存儲設(shè)備上,而是在訪問時由內(nèi)核臨時動態(tài)生成。實際上,制作根文件系統(tǒng),就是按照需要創(chuàng)建各種目錄,并在里面存放需要的文件,比如在 /etc 目錄下存放系統(tǒng)配置文件,在 /lib 目錄下存放系統(tǒng)庫文件,在 /dev 目錄下存放設(shè)備節(jié)點文件,在 /sbin、/bin 目錄下存放可執(zhí)行文件等。 使用 BusyBox 工具創(chuàng)建嵌入式根文件系統(tǒng)/bin、 /sbin 目錄下的可執(zhí)行文件,另外在 /dev 目錄下創(chuàng)建必要的設(shè)備節(jié)點,在 /lib 目錄下創(chuàng)建必要的動態(tài)鏈接庫,在 /etc 目錄下創(chuàng)建必要的配置文件,在 /dev 目錄下創(chuàng)建必要的配置文件等。包含各個配置選項,如核心命令 Coreutils、控制臺相關(guān)命令Console Utilities、網(wǎng)絡(luò)方面的命令 Networking Utilities、進程相關(guān)的命令 Process Utilities等。 (2) 壓縮、解壓縮工具命令配置界面 在主配置菜單界面,選擇 Archival Utilities 選項,進入如 圖 213 所 示的壓縮、解壓縮工具命令配置界面。 (4) 控制臺相關(guān)命令配置界面 在主配置菜單界面,選擇 Console Utilities 選項,進 入如 圖 215 所 示的控制臺相關(guān)命令配置界面。 (6) 網(wǎng)絡(luò)相關(guān)命令配置界面 在主配置菜單界面,選擇 Networking Utilities 選項,進入如 圖 217 所 示的編輯相關(guān)命令配置界面。 基于物聯(lián)網(wǎng)技術(shù)的智能家居嵌入式系統(tǒng)設(shè)計 13 圖 216 編輯相關(guān)命令 Editor Utilities 圖 217 網(wǎng)絡(luò)相關(guān)命令 Networking Utilities 圖 218 進程相關(guān)命令 Process Utilities 基于物聯(lián)網(wǎng)技術(shù)的智能家居嵌入式系統(tǒng)設(shè)計 14 配置 dev 目錄,可以使用手工創(chuàng)建,即在制作根文件系統(tǒng)時,在 dev 目錄下創(chuàng)建使用的設(shè)備文件,系統(tǒng)在掛載根文件系統(tǒng)后,即可使用 dev 目錄下的設(shè)備文件。 對于 etc 目錄下的配置文件,拷貝虛擬機目錄下的 passwd、 group 等目錄至 etc 下,接下來編輯創(chuàng)建與啟動有關(guān)的三個主要的配置文件,即 etc/inittab 文件、 etc/件、 etc/profile 文件,在后續(xù)的移植工作中會經(jīng)常修改這幾個文件,其具體腳本,詳見附件。 嵌入式 GUI移植 對于 Linux 的 GUI 系統(tǒng),接觸比較多的是桌面的 KDE、 GNOME 等 [3],而針對嵌入式 GUI,一般則是 QTE,它是嵌入式交叉編譯的 QT,實際上,編譯運行代碼與 PC上完全相同,只是為適應(yīng)不同的平臺環(huán)境而選擇交叉編譯的結(jié)果 。 將 嵌入式 GUI 移植到開發(fā)板上去,需要根據(jù)平臺環(huán)境做相應(yīng)的配置編譯,比如選擇觸摸屏支持、鼠標(biāo)鍵盤支持、 PNG等圖片格式支持等,下面是針對 版本進行移植的主要操作步驟: 步驟一:安裝 默認(rèn)將軟件包 放到目錄 /tmp 下 tar xvzf C /opt /QT4 cd ./configure gmake //該過程需要 2~3 小時 , 根據(jù)機器性能而定 gmake install PC 上的 QT4 編譯成功 , 接下來需要設(shè)置環(huán)境變量 , 編輯文件 ! bin/bash PATH=/usr/local/Trolltech/:$PATH QTDIR=/usr/local/Trolltech/ LD_LIBRARY_PATH=$QTDIR/lib:$ LD_LIBRARY_PATH 基于物聯(lián)網(wǎng)技術(shù)的智能家居嵌入式系統(tǒng)設(shè)計 15 export PATH QTDIR LD_LIBRARY_PATH 保存,在每次進入 /opt/ QT4/ 時設(shè)置環(huán)境變量 步驟二:安裝 軟件包 默認(rèn)將軟件包 放到目錄 /tmp 下 tar xvzf cd tslib ./ .configureprefix=/opt/mytslibhost=armlinux make make install 可以發(fā)現(xiàn)在 /opt/mytslib 目錄下出現(xiàn) etc 、 include、 lib、 bin目錄 (在編譯過程通過 prefix配置選項選擇路徑,這里選擇安裝在 /opt/mytslib 路徑下 ) 步驟三:安裝 ,配置選項如下 tar xvzf –C /opt/ QT4 cd ./configure prefix=micro2440 release shared fast pch noqt3support qtsqlsqlite nolibtiff nolibmng qtlibjpeg qtzlib qtlibpng qtfreetype noopenssl –nomake exmaples nomake demos nomake tools optimizedqmake nophonon nonis noopengl nocups noxcursor noxfixes noxrandr noxrender noxkb nosm noxinerama noxshape noseparatedebuginfo xplatform qws/linuxarmg++ embedded arm depths 16 noqvfbqtgfxlinuxfb nogfxqvfb nokbdqvfb nomouseqvfb qtkbdusb confirmlicense qtmousetslib I/home/mytslib/include L/home/mytslib/lib gmake gmake install 由于編譯器的問題,安裝完成后即使運行在 PC 上編譯通過的 examples 也會出現(xiàn)經(jīng)典的 Segmenttion fault 錯誤,可以通過下面的途徑解決: 424 /* 425 canaccel=useOffccreen()。 428 */ 429 canaccel=false。 726 *lowest=mapsize。 //dummy entry to mark start 728 } 729 */ 基于物聯(lián)網(wǎng)技術(shù)的智能家居嵌入式系統(tǒng)設(shè)計 16 將上述這段源代碼注釋掉, 主要是 對 canccel重新賦值,然后再進行編譯工作,embeddedQT4 編譯成功,接下來需要設(shè)置環(huán)境變量,編輯文件 。 cp –rf /opt/mytslib /lib /nfs/rootfs/tslib cp –rf /opt/mytslib /etc /nfs/rootfs/tslib cp –rf /opt/mytslib /bin/ts_calibrate /nfs/rootfs/tslib/bin cp –rf /opt/mytslib /bin/ts_test /nfs/rootfs/tslib/bin cp –rf /opt/mytslib /lib /nfs/rootfs/micro2440 cp –rf /micro2440/etc /nfs/rootfs/micro2440 cp –rf /micro2440/examples /nfs/rootfs/micro2440 cp –rf /micro2440/plunging /nfs/rootfs/micro2440 cp –rf /micro2440/bin /nfs/rootfs/micro2440 cp –rf /micro2440/include /nfs/rootfs/micro2440 在移植 /micro2440 時鏈接文件需要單獨創(chuàng)建 , 利用命令 ln –s source_file target_file,在首次執(zhí)行 QT4 程序時 , 會提示找不到庫文件 , 這時開發(fā)板一般缺少 /micro2440/lib 目錄下以及 /tslib/lib 目錄下鏈接文件 , 需要參考 PC 編譯完成后在相應(yīng)目錄下的鏈接文件 ,手動創(chuàng)建。 接下來需要配置開發(fā)板下 /etc/profile 文件設(shè)置環(huán)境變量 , /tslib/ 文件設(shè)置觸摸
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1