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

正文內(nèi)容

基于arm9的linux嵌入式系統(tǒng)移植與驅(qū)動(dòng)開(kāi)發(fā)(編輯修改稿)

2025-07-21 01:15 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 ...................44 幀緩沖驅(qū)動(dòng)程序的測(cè)試 ...................................................................................................47 本章小結(jié) .................................................................................................................................48 第七章 總結(jié)與展望 ...............................................................................................................................49 參考文獻(xiàn)...............................................................................................................................................51 附錄 1 程序清單 ...................................................................................................................................53 附錄 2 攻讀碩士學(xué)位期間撰寫(xiě)的論文....................................................................................................54 致謝......................................................................................................................................................55 京郵電大學(xué)碩士研究生學(xué)位論文 第二章 搭建嵌入式 Linux 開(kāi)發(fā)平臺(tái) 5 第二章 搭建嵌入式 Linux 開(kāi)發(fā)平臺(tái) 開(kāi)發(fā)平臺(tái)硬件參數(shù) 集中器采用 ATMEL 公司的 AT91SAM9260EK 作為處理芯片,AT91SAM9260EK 是一款 ARM926EJS 內(nèi)核的工業(yè)級(jí)芯片,帶有 協(xié)議的 USB HOST 和 Device 接口,支持全功能的 9 線(xiàn)串口等。 開(kāi)發(fā)板硬件資源: 由 AT91SAM9260EK 數(shù)據(jù)手冊(cè)可得核心板資源參數(shù): n AT91SAM9260EK(ARM926EJS),主頻 180M(達(dá)到 200MIPS),工業(yè)級(jí); n 8K 字節(jié)的高速數(shù)據(jù)緩存器,8K 字節(jié)的高速指令緩沖區(qū); n 64M Bytes NAND FLASH。 n 32M Bytes SDRAM; 串口 n 一個(gè) DEBUG 口; n 三個(gè)標(biāo)準(zhǔn) RS232 口; n 三個(gè)標(biāo)準(zhǔn) RS485 口; 網(wǎng)口 n 一個(gè) 100M 網(wǎng)口; USB 接口 n 一個(gè) USB HOST(USB Full Speed)接口; n 一個(gè) USB Device(USB Full Speed)接口; 其他設(shè)備 n 160*160 LCD 顯示設(shè)備; n RTC 實(shí)時(shí)時(shí)鐘(帶電池); n 按鍵鍵盤(pán); 開(kāi)發(fā)宿主機(jī)交叉編譯環(huán)境的建立 交叉編譯是嵌入式開(kāi)發(fā)過(guò)程中的一項(xiàng)重要技術(shù),一般的嵌入式目標(biāo)系統(tǒng)沒(méi)有足夠的資京郵電大學(xué)碩士研究生學(xué)位論文 第一章 緒論 4 的數(shù)據(jù)手冊(cè),UC1698U 的顯示控制器并不能自動(dòng)更新這段內(nèi)存緩存區(qū),不能實(shí)時(shí)的將緩沖區(qū)的數(shù)據(jù)更新到屏幕。為了在本 LCD 上開(kāi)發(fā)出基于 Qt/Embedded 的圖形用戶(hù)界面,方便用戶(hù)和集中器的交互,在這里借助內(nèi)核的定時(shí)器將幀緩沖區(qū)的數(shù)據(jù)實(shí)時(shí)更新至屏幕,完成基于 FrameBuffer 的驅(qū)動(dòng)開(kāi)發(fā)。 課題來(lái)源以及論文的主要工作 針對(duì)嵌入式 Linux 系統(tǒng)移植存在的問(wèn)題,結(jié)合南京某公司負(fù)荷控制管理終端平臺(tái)的開(kāi)發(fā)工作,本文的章節(jié)安排如下: 第一章是緒論內(nèi)容,結(jié)合本課題選題背景引出本文研究?jī)?nèi)容。 第二章重點(diǎn)介紹搭建嵌入式 Linux開(kāi)發(fā)平臺(tái),建立交叉編譯環(huán)境,為后續(xù) BootLoader、kernel 及文件系統(tǒng)的編譯和移植做準(zhǔn)備。 第三章對(duì) BootLoader 的結(jié)構(gòu),啟動(dòng)流程進(jìn)行了分析;針對(duì)選用的 Uboot 不支持所選YAFFS2 文件系統(tǒng)燒寫(xiě)的問(wèn)題進(jìn)行了研究,修改 Uboot 源碼并重新編譯,最終將編譯生成的Uboot 鏡像移植到本目標(biāo)板中,修改后的 Uboot 可穩(wěn)定在目標(biāo)板中運(yùn)行。 第四章分析 Linux 內(nèi)核的源碼結(jié)構(gòu)以及啟動(dòng)過(guò)程[20][21],結(jié)合本目標(biāo)板,對(duì)內(nèi)核源代碼進(jìn)行修改:根據(jù)需要為 Linux 內(nèi)核添加分區(qū)表信息;在 Linux 內(nèi)核源碼中添加 RS485 模式串口設(shè)備驅(qū)動(dòng)代碼,使得目標(biāo)板支持 RS485 遠(yuǎn)程通信方式,;將 YAFFS2 文件系統(tǒng)的相關(guān)補(bǔ)丁添加到內(nèi)核源碼;修改內(nèi)核根目錄下的 Makefile 文件并對(duì)內(nèi)核進(jìn)行裁剪,使生成的內(nèi)核既滿(mǎn)足我們的要求,占用空間又??;最后借助于 TFTP 軟件在目標(biāo)板進(jìn)行移植。 第五章介紹嵌入式文件系統(tǒng)結(jié)構(gòu),尤其是 YAFFS2 文件系統(tǒng),介紹了文件系統(tǒng)制作工具 Busybox,并詳細(xì)給出了該文件系統(tǒng)的編譯和移植過(guò)程。當(dāng) Linux系統(tǒng)啟動(dòng)時(shí),可以成功的掛載 YAFFS2 文件系統(tǒng)并能穩(wěn)定的運(yùn)行。 第六章分析嵌入式設(shè)備驅(qū)動(dòng)開(kāi)發(fā)流程,重點(diǎn)對(duì)驅(qū)動(dòng)程序中的幀緩沖技術(shù)進(jìn)行了研究。針對(duì)本目標(biāo)板,采取直接讀寫(xiě) GPIO 口和幀緩沖相互結(jié)合的方式來(lái)開(kāi)發(fā)驅(qū)動(dòng),并且在該 LCD設(shè)備上,改善原來(lái)采用的描點(diǎn)方式繪制的圖形用戶(hù)界面,采取基于 Qt/Embedded 的圖形用戶(hù)界面,也需要支持幀緩沖技術(shù)。但本目標(biāo)板上的 LCD 設(shè)備顯示控制器并不支持緩沖區(qū)的自動(dòng)更新,在這里我們借助內(nèi)核定時(shí)器完成自動(dòng)更新并實(shí)時(shí)的顯示到 LCD 界面上。最終開(kāi)發(fā)了基于 Qt/Embedded 的用戶(hù)圖形界面驗(yàn)證該幀緩沖驅(qū)動(dòng)的可靠性、穩(wěn)定性,結(jié)果表明該驅(qū)動(dòng)可以穩(wěn)定的運(yùn)行于嵌入式 Linux系統(tǒng)中。 第七章總結(jié)與展望,對(duì)本文所完成的工作進(jìn)行了總結(jié);并展望嵌入式領(lǐng)域的未來(lái)。京郵電大學(xué)碩士研究生學(xué)位論文 第二章 搭建嵌入式 Linux 開(kāi)發(fā)平臺(tái) 6 源供編譯過(guò)程使用,就需要借助主機(jī),在主機(jī)中完成編譯,采用交叉編譯技術(shù),可以利用主機(jī)足夠的資源編譯成功后移植到目標(biāo)機(jī)上運(yùn)行。Linux下的交叉編譯環(huán)境包括: (1)針對(duì)目標(biāo)系統(tǒng)的編譯器 (2)針對(duì)目標(biāo)系統(tǒng)的二進(jìn)制編譯工具 (3)目標(biāo)系統(tǒng)的標(biāo)準(zhǔn) c 庫(kù) (4)目標(biāo)系統(tǒng)的 Linux 內(nèi)核頭文件 armnoneLinuxgnueabigcc 的安裝 本系統(tǒng)中 Uboot、kernel、文件系統(tǒng)的編譯工具鏈都是統(tǒng)一的,所選擇的都是armnoneLinux gnueabi gcc,我們?cè)谶@里選擇下載制作好的交叉編譯鏈,然后稍作修改就能為我們所用。下載的壓縮包:。 解壓后里面的 armnoneLinuxgnueabigcc 就是我們要用的交叉編譯鏈。 在/etc/ 中修改 PATH 環(huán)境變量,添加工具鏈的路徑:$ export PATH=$PATH: /home/teen/arm linu/arm2008q1/bin,保存退出,重新登錄 root 時(shí)新的環(huán)境變量就會(huì)生效。 TFTP 和 NFS 的配置 在進(jìn)行移植內(nèi)核鏡像文件和根文件系統(tǒng)時(shí),Uboot 通過(guò) TFTP 協(xié)議將二者下載到目標(biāo)板的 SDRAM 中,因此要在宿主機(jī)上設(shè)置 TFTP 服務(wù)器。當(dāng)利用 NFS 文件系統(tǒng)共享文件時(shí),還需在宿主機(jī)上設(shè)置 NFS 服務(wù)器。在本系統(tǒng)中,宿主機(jī)的 IP 為 ,網(wǎng)關(guān)為 ,子網(wǎng)掩碼為 ,目標(biāo)板的 IP 為 。 NFS 目錄/home/teen/nfsroot。 本章小結(jié) 本章首先介紹了硬件開(kāi)發(fā)平臺(tái)參數(shù),然后詳細(xì)闡述了交叉編譯環(huán)境搭建的過(guò)程,同時(shí)在Linux 主機(jī)上配置了 TFTP 和 NFS 服務(wù)器,為后續(xù)嵌入式源碼編譯、調(diào)試以及最終鏡像移植做好準(zhǔn)備。京郵電大學(xué)碩士研究生學(xué)位論文 第三章 BootLoader 的設(shè)計(jì)與移植 7 第三章 BootLoader 的設(shè)計(jì)與移植 BootLoader 概述 在嵌入式 Linux系統(tǒng)中,通??煞譃樗膫€(gè)層次,這四個(gè)層次自上而下依次是:用戶(hù)應(yīng)用程序,文件系統(tǒng),操作系統(tǒng)內(nèi)核,引導(dǎo)加載程序。其中引導(dǎo)加載程序是系統(tǒng)加電后運(yùn)行的第一段軟件代碼,由固件中的 Boot 代碼和 BootLoader 兩大部分組成。其中 BootLoader 運(yùn)行在操作系統(tǒng)之前,為操作系統(tǒng)的調(diào)用做準(zhǔn)備。在調(diào)用操作系統(tǒng)之前,BootLoader 完成的工作主要有初始化目標(biāo)板軟硬件設(shè)備、建立內(nèi)存映射圖、設(shè)置好系統(tǒng)軟硬件環(huán)境[22]。圖 給出了整個(gè) BootLoader 的工作流程。 經(jīng)過(guò)矢量表跳轉(zhuǎn),進(jìn)入特權(quán)模式,關(guān)閉中斷 一個(gè)事件引起 boot(例如上電、復(fù)位、看門(mén)狗超時(shí)) 初始化處理 清除指令和 cache 重定位Uboot后半部代碼到內(nèi)存,跳轉(zhuǎn)執(zhí)行 建立堆棧和初始化數(shù)據(jù)段 初始化并檢查硬件系統(tǒng)其他部件(串口、網(wǎng)口) 重定位 Uboot 后半部代碼到內(nèi)存,跳轉(zhuǎn)執(zhí)行 建立堆棧和初始化數(shù)據(jù)段,初始化并檢查硬件系統(tǒng)(串口、網(wǎng)口) 顯示各種檢測(cè)信息及 boot 菜單 尋找內(nèi)核并引導(dǎo),依次尋找下列設(shè)備(串口、網(wǎng)口、flash) 將操作系統(tǒng)內(nèi)核引導(dǎo)到 SDRAM 操作系統(tǒng)內(nèi)核拷貝到 flash? 拷貝到 flash 跳轉(zhuǎn)到 SDRAM中操作系統(tǒng)入口 N 圖 BootLoader 工作流程圖 Y 京郵電大學(xué)碩士研究生學(xué)位論文 第一章 緒論 2 讀,不能獲得某一個(gè)時(shí)刻所有用戶(hù)的用電統(tǒng)計(jì)數(shù)據(jù)。這樣得到的數(shù)據(jù)參考性不大,不方便供電部門(mén)對(duì)用電進(jìn)行合理的分配管理。正是基于自動(dòng)抄表系統(tǒng)如此多的優(yōu)勢(shì),近年來(lái)無(wú)論是國(guó)內(nèi)還是國(guó)外,對(duì)自動(dòng)抄表系統(tǒng)的研究一直是熱點(diǎn)之一。一般自動(dòng)抄表系統(tǒng)由主站、集中器、采集器、終端電能表以及數(shù)據(jù)傳輸通道構(gòu)成,一般遠(yuǎn)程電力抄表系統(tǒng)的系統(tǒng)架構(gòu)如圖 所示: 圖 自動(dòng)抄表系統(tǒng)架構(gòu) 我們?cè)谶@里研究的是自動(dòng)抄表系統(tǒng)中的集中器,因?yàn)榧衅鞯拈_(kāi)發(fā)是遠(yuǎn)程抄表系統(tǒng)開(kāi)發(fā)的核心任務(wù)之一[11],集中器在整個(gè)系統(tǒng)中的地位十分重要,相當(dāng)于人體脊椎,起承上啟下作用。集中器向上連接著主站服務(wù)器,負(fù)責(zé)接收并下達(dá)主站服務(wù)器命令,對(duì)電網(wǎng)的數(shù)據(jù)進(jìn)行監(jiān)控或者抄讀采集器數(shù)據(jù);向下連接著采集器或者是終端電表,讀取采集數(shù)據(jù)或終端電表數(shù)據(jù)進(jìn)行存儲(chǔ)并上傳至主站服務(wù)器以便進(jìn)行數(shù)據(jù)處理。除此之外,集中器還應(yīng)具有顯示、統(tǒng)計(jì)以及報(bào)警功能等,以便能實(shí)現(xiàn)現(xiàn)場(chǎng)調(diào)試檢查與設(shè)置[12];同時(shí),集中器也可以和不同的接口設(shè)備進(jìn)行相連,如圖 中的手持終端。鑒于集中器在整個(gè)自動(dòng)抄表系統(tǒng)中的關(guān)鍵地位,無(wú)論是對(duì)硬件平臺(tái)還是軟件平臺(tái),對(duì)集中器系統(tǒng)進(jìn)行改進(jìn)都是積極的意義。本文以南京某電力公司的集中器為背景,展開(kāi)對(duì)集中器的軟件部分的研究。 研究?jī)?nèi)容 本文研究的集中器,硬件平臺(tái)是南京某電力公司提供的,該集中器采用的處理芯片是ATMEL 公司生產(chǎn)的 AT91SAM9260EK,內(nèi)存 32M,配有一個(gè) 160*160 的 LCD(UC1698U)。京郵電大學(xué)碩士研究生學(xué)位論文 第三章 BootLoader 的設(shè)計(jì)與移植 8 BootLoader 的操作模式 一般來(lái)講,BootLoader 有兩種操作模式,包括啟動(dòng)加載模式和下載模式。這種操作模式的劃分是對(duì)于開(kāi)發(fā)人員來(lái)說(shuō)的。 (1)啟動(dòng)加載模式 即自主模式,整個(gè)啟動(dòng)過(guò)程無(wú)需用戶(hù)的介入,BootLoader 自主將操作系統(tǒng)從目標(biāo)機(jī)上的存儲(chǔ)設(shè)備中加載到目標(biāo)板的 SDRAM 中運(yùn)行。這種自主啟動(dòng)加載模式,是最終發(fā)布版本,也是我們用戶(hù)在日常生活中所看到的啟動(dòng)模式。 (2)下載模式 在該模式下,目標(biāo)機(jī)的 BootLoader 將通過(guò)串口或者網(wǎng)口等方式與宿主機(jī)通信并下載文件(包括內(nèi)核鏡像文件、根文件系統(tǒng)鏡像等)。從宿主機(jī)下載的文件通常首先保存在目標(biāo)機(jī)的內(nèi)存中,然后根據(jù)實(shí)際情況在內(nèi)存中執(zhí)行或者寫(xiě)到目標(biāo)板上的 FLASH 等非易失存儲(chǔ)設(shè)備中。當(dāng) BootLoader 工作在此模式下時(shí),通常需要向它的終端用戶(hù)提供相應(yīng)的命令接口[23]。 本系統(tǒng)中使用的是 Uboot,既支持啟動(dòng)加載模式,又可以通過(guò)用戶(hù)的介入進(jìn)入下載模式。在兩種模式間,用戶(hù)可以根據(jù)需要進(jìn)行切換。Uboot 在啟動(dòng)時(shí),首先默認(rèn)進(jìn)入的是啟動(dòng)加載模式,但是在啟動(dòng) Uboot 后、加載內(nèi)核鏡像文件之前,Uboot 會(huì)提供一定時(shí)間等待用戶(hù)的干預(yù),該時(shí)間是由宏 CONFIGBOOTDELAY 定義的,若用戶(hù)進(jìn)行了干預(yù),則會(huì)切換到下載模式,反之繼續(xù)執(zhí)行加載內(nèi)核鏡像文件。 Uboot 的源碼結(jié)構(gòu) Uboot,全稱(chēng) Universal Boot Loader,是遵循 GPL 條款的開(kāi)放源碼項(xiàng)目。其源碼目錄以及編譯形式與 Linux內(nèi)核及其的相似。除此之外,Uboot 可靠性高、穩(wěn)定性強(qiáng)、適用性好,支持
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1