欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      基于ARM的嵌入式Linux終端的研討與實現(xiàn).

      時間:2019-05-15 00:18:04下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關的《基于ARM的嵌入式Linux終端的研討與實現(xiàn).》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《基于ARM的嵌入式Linux終端的研討與實現(xiàn).》。

      第一篇:基于ARM的嵌入式Linux終端的研討與實現(xiàn).

      基于ARM的嵌入式Linux終端的研討與實現(xiàn)

      【中文摘要】嵌入式Linux是將普通Linux操縱體系入行剪裁、改動,使之能在嵌入式盤算機體系上運行的一種操縱體系。因為兼有Linux和嵌入式體系的長處,以及ARM Linux因其開放的資源特性,嵌入式Linux體系有著巨大的市場前景和商業(yè)機遇。在實際的應用體系中,對操縱體系的實時機能也有一定的請求。好比在通信體系中,如果能對操縱體系的實時機能入行優(yōu)化,提高體系的響應速度,就可以用軟件實現(xiàn)通信協(xié)定,下降對硬件的請求,用單芯片實現(xiàn)通信體系,從而下降產(chǎn)品成本。本論文的研討主要是基于ARM920T硬件平臺,該平臺主要面向高機能的用戶產(chǎn)品開發(fā)。在此平臺基本上,本文圍繞著Linux內(nèi)核向ARM平臺移植中幾個核心技術鋪開討論:首先對嵌入式Linux體系體系構造入行了歸納,并詳細闡述了與體系移植相關的主要層。接著,給出了啟動引導代碼Boot Loader和Linux內(nèi)核初始化部門移植到硬件平臺上的整個入程,解決了移植入程中所面臨的義務和難題。最后,在對Linux內(nèi)核驅(qū)動模型深入掌握的基本上,深入探討了QT/Embedded界面的移植。本文最后討論了一些當前嵌入式Linux實時優(yōu)化技術。剖析了在勝利移植ARM Linux內(nèi)核基本上,優(yōu)化ARM Linux的中止體系,下降體系的中止延時。');【Abstract】 Embedded Linux is an Operating System running on the embedded computer system after cutting and modifying general Linux.Because of the advantages in both open source Linux and embedded system, embedded Linux has large market prospect and commercial chances, now the focus of applications for the embedded Linux has become porting Linux kernel to microprocessor.In some real embedded system applications, real time performances are demanded for operating system like ARM Linux.For example, in communication system, although the speed of ARM920T processors can reach several MHz, the response speed of Linux now is not fast enough.In this case individual hardware communication module should be added to increase the real time performances.If we could optimize the real time property of operating system, then we can realize communication agreement in software, reduce the demand of hardware.Finally we can make communication system in a single chipset and cut down the cost of products.The ***’s research is based on ARM920T hardware platform, which is mainly used for high quality user product developing.On the platform, this text discusses several key technologies about how to porting Linux kernel to ARM platform: first, draw a conclusion of embedded Linux system architecture, and describe related layers of porting system in detail;secondly, write out the whole process on porting Boot Loader and Linux kernel init code to hardware platform, solve faced duties and difficulties;finally, after highly grasp the Linux kernel driver model, deeply discuss porting QT/Embedded inte***ce.Support the project software developing, and greatly reduce the complexity and period in embedded product developing.In the end, we have dropped the conclusion about current cut edge real time technologies for embedded Linux.Based on the successfully ported ARM Linux kernel, optimize its interrupt system, reduce its interrupt delay.

      第二篇:嵌入式linu學習心得

      嵌入式Linux學習心得

      1、Linux命令

      ls:查看目錄-l以列表方式查看;ls –l 與ll的功能一樣 pwd: 查看當前的目錄

      cd:改變當前操作目錄cd /直接跳到根目錄 cd..回到上一級目錄 cat: 打印顯示當前文件的內(nèi)容信息

      mkdir:創(chuàng)建目錄

      fdisk: 查看硬盤分區(qū)信息,-l以列表方式查看

      ->代表是鏈接文件,類似window下的快捷方式。

      cp: 復制命令,例子cp 文件名 /home/dir/

      mv: 移動或改名,如mv sonf.confsonf.txt(改名)移動:mv sonf.conf / rm:刪除命令,如rm –f test.c;如刪除目錄rm –fr d

      man:查看某個命令的幫助,man 命令

      2、各系統(tǒng)目錄的功能

      drw—r—w--:d代表是目錄,drw代表當前用戶的權限,r代表組用戶的權限,w代表其它用戶的權限。x代表有執(zhí)行權限。

      /boot/gruff.conf: 啟動引導程序

      /dev:brw—rw--:b代表是塊設備。Linux設備有三種,塊設備(b開頭)、字符設備(c開頭)、網(wǎng)絡設備。had代表第一個硬盤,hdb代表第二個硬盤。Hdb2代表第二塊硬盤的第二個分區(qū)。3,67代表主設備為3,從設備為67./etc:存放的是系統(tǒng)的配置文件。Inittab文件存放不同啟動方式下必須啟動的進程。Inittab文件中有6個啟動level,wait中對應著6個level的目錄,respawn代表當一個進程被意外終止了,但會自動啟動的進程,如守護進程。rc.d目錄中存放了一個rc.sysinit文件,里面存放系統(tǒng)初始化配置信息。/etc還有一個vsftpd里面存放tcp、ftp的配置。

      /home : 用戶目錄,存放用戶的文件,/lib:存放庫文件,后綴為so的文件代表動態(tài)鏈接庫。

      /lost+found:系統(tǒng)意外終止,存放一些可以找回的文件。

      /mnt:掛載外部設備,如掛載光驅(qū):mount –t /dev/cdrom/mnt/cdrom,如

      果在雙系統(tǒng)中,要查看windows中D盤的文件,首先應該將D盤的文件映射過來,mount –t /dev/hda2/mnt/windows/d

      /opt:用戶安裝的應用程序

      /proc:是系統(tǒng)運行的映射,比較重要。里面的文件數(shù)字代表進程號。每個進程號目錄下包含進程的基本信息。還有其他信息,如cpuinfo等,內(nèi)核支持的文件系統(tǒng)filesystem等。系統(tǒng)支持的中斷interrupts,iomen代表內(nèi)存分配情況。ioport存放IO端口號。還有分區(qū)信息,modole信息,狀態(tài)信息,版本信息

      對于Linux的設備驅(qū)動程序,有兩種加載模式,一種是直接加載進linux內(nèi)核,一種是以模塊的方式加載到內(nèi)核。

      /sbin: 系統(tǒng)管理的一些工具。如poweroff關機工具。

      /usr: 安裝系統(tǒng)時很多文件放在此目錄下面,包含一些更新等,include包含的頭文件,lib 是Linux的庫文件,src包含Linux2.4的內(nèi)核源碼

      /var:存放是臨時變量

      3、

      第三篇:ARM與嵌入式實驗報告

      ARM與嵌入式技術

      實驗報告

      專業(yè)班級:通信工程

      姓名:**** 學號:******

      實驗日期:2012年6月7日 指導老師:*****

      一、實驗目的

      1.學習使用Embest IDE開發(fā)環(huán)境及ARM 軟件模擬器;

      2.掌握簡單ARM 匯編指令,進一步加強對嵌入式的熟悉和了解。

      二、實驗設備

      硬件:PC 機

      軟件:Embest IDE 開發(fā)環(huán)境

      三、實驗內(nèi)容

      例3:實現(xiàn)64位加法運算,要求【R1:R0】+【R3:R2】,結(jié)果放回【R1:R0】中; 例2:編寫程序?qū)2的高8位傳送到R3的低8位(不考慮R3的其它位); 例7:編寫一段程序計算10??;

      例8:串拷貝(R1指向源數(shù)據(jù)串的首地址,R0指向目的數(shù)據(jù)串的首地址)。

      四、實驗步驟

      1)新建工程:

      運行Embest IDE 集成開發(fā)環(huán)境,選擇菜單項File → New Workspace,如圖一,系統(tǒng)彈出一個對話框,鍵入文件名“沈”,如圖二,點擊OK 按鈕。將創(chuàng)建一個新工程,并同時創(chuàng)建一個與工程名相同的工作區(qū)。此時在工作區(qū)窗口將打開該工作區(qū)和工程.。

      2)建立源文件:

      點擊菜單項File → New,如圖三,系統(tǒng)彈出一個新的文本編輯窗,輸入源文件代碼。編輯完后,保存文件“沈.s”后綴,如圖四。

      3)添加源文件:

      選擇菜單項Project → Add To Project → Files,在工程目錄下選擇剛才建立的源文件.s后綴文件,如圖五,圖六。

      4)基本配置:

      選擇菜單項Project → Settings,彈出工程設置對話框。在工程設置對話框中。① 選擇Processor 設置對話框,按照圖七所示,進行配置:

      圖七

      ② 選擇Remote設置對話框,按照下圖八所示,進行配置:

      圖八 ③ 選擇最右邊一個進行編譯,顯示如圖九,則編譯成功。

      圖九

      ④ 選擇Project → Settings → Debug設置對話框,按照圖十所示,進行配置:

      圖十 ⑤

      選擇

      5)選擇菜單項Debug →Remote Connect 進行連接軟件仿真器,將存儲器地址改為0x1000,如圖十一,執(zhí)行Debug →Download 命令下載程序,并打開寄存器窗口。打開memory 窗口,按F10進行單步跟蹤,觀察寄存器的數(shù)據(jù)變化并分析。最右邊一個進行編譯,顯示如圖九,則編譯成功。

      圖十一

      五、各實驗的參考程序及運行結(jié)果

      實驗一:(例3)實現(xiàn)64位加法運算,要求【R1:R0】+【R3:R2】,結(jié)果放回【R1:R0】中; 1.程序代碼如下:

      .global _start

      .text _start:

      mov R0,#11

      /*R0=11*/ mov R1,#22

      /*R1=22*/ mov R2,#33

      /*R2=33*/ mov R3,#44

      /*R3=44*/ ADDS R0,R0,R2

      /*R0等于低32位相加,并影響標志位*/

      ADC R1,R1,R3

      /*R1等于高32位相加,并加上低位進位*/ stop:

      b stop.end

      2.分析調(diào)試:

      ①download下載:

      ② 讀入數(shù)據(jù):

      ③ r0+r2→r0(低32位):

      ④ r1+r3→r1(帶進位的加法):

      實驗二:(例2)編寫程序?qū)2高8位傳送到R3的低8位(不考慮R3的其它位);

      1.程序代碼如下:

      .global _start _start: ldr r2,=0x23453401 ldr r3,=0xabcd1200 and r2,r2,#0xff000000 /*保留R2的高8位,屏蔽低24位*/ and r3,r3,#0xffffff00 /*保留R3的高24位,屏蔽低8位*/

      orr r3,r3,r2,lsr #24

      /*將R2的高8位傳送到R3的低8位*/ stop:

      b stop.end

      2.分析調(diào)試:

      ①download下載:

      ②保留r2的高8位,屏蔽低24位:

      ③保留r3的高24位,屏蔽低8位:

      ④將R2的高8位傳送到R3的低8位:

      實驗三:(例7)編寫一段程序計算10!

      1.程序代碼如下:

      .global _start.text.equ num,10 _start: mov r0,#num mov r1,r0 s1: subs r1,r1,#1

      /*把r1-1放入r1*/ mul r0,r1,r0

      /*r0*r1放入r0*/ cmp r1,#1

      /*比較R1與1的大小*/ beq stop

      bne s1 stop: b stop.end

      2.分析調(diào)試:

      ① download下載:

      ② 第一次執(zhí)行S1,r1=10-1=9,10*9=90,換成16進制是5a。

      ③ 第二次執(zhí)行S1,r1=9-1=8,10*9*8=720,換成16進制是2d0。

      ④ 依次執(zhí)行S1,到r1=1,停止,10*9*8??*1=3628800,換成16進制是375f00。

      實驗四:(例8)串拷貝(R1指向源數(shù)據(jù)串首地址,R0指向目的數(shù)據(jù)串的首地址)。1.程序代碼如下:.global _start.text.EQU NUM,8 _start:

      LDR R0,=srcstr

      /*指向源數(shù)據(jù)串R0*/

      LDR R1,=dststr

      /*指向目標數(shù)據(jù)串R1*/

      mov R3,#NUM

      /*R3=8*/

      mov LR,PC

      /*返回*/

      B strcopy

      /*調(diào)用串拷貝子程序*/ stop: b stop

      strcopy:

      LDRB R2,[R0],#1

      /*裝載字節(jié)同時更新地址*/

      STRB R2,[R1],#1

      /*存儲字節(jié)同時更新地址*/

      SUBS R3,R3,#1

      CMP R3,#0

      /*判斷是否結(jié)束*/

      BNE strcopy

      /*不是,則繼續(xù)*/

      MOV PC,LR

      /*返回*/.data

      srcstr:.long 1,2,3,4,5,6,7,0

      /*定義源數(shù)據(jù)串*/

      dststr:.long 5,3,2,1,4,6,8,0

      /*定義目的字符串*/

      2.分析調(diào)試:

      ①單步跟蹤后的結(jié)果及存儲器的結(jié)果顯示:

      ②寄存器的結(jié)果顯示:

      六、實驗心得

      今天在實驗室里,學習使用Embest IDE開發(fā)環(huán)境及ARM 軟件模擬器,掌握簡單ARM 匯編指令,進一步加強了對嵌入式的熟悉和了解。鄭老師在兢兢業(yè)業(yè)的向我們傳授實踐知識的同時也向我們提問相關理論問題,讓我們在學習的過程加深對實踐和理論兩者之間的聯(lián)系,知道每一個步驟的發(fā)生的原因及產(chǎn)生相應的結(jié)果,即對實驗的來龍去脈有了更清楚的認識,為今后的學習打下了一定的基礎。相信在接下來的實驗中,我們會在鄭老師的引導下,做起實驗來更能得心應手,輕車熟駕!

      第四篇:嵌入式系統(tǒng)ARM實驗報告

      南京郵電大學通信與信息工程學院

      實驗報告

      實驗名稱:實驗一基于ADS開發(fā)環(huán)境的設計

      實驗二嵌入式Linux交叉開發(fā)環(huán)境的建立 實驗三嵌入式Linux環(huán)境下的程序設計

      課程名稱嵌入式系統(tǒng)B

      班級學號B13010711 姓名馬俊民

      開課時間 2015/2016學年第1學期

      實驗一基于ADS開發(fā)環(huán)境的程序設計

      一、實驗目的

      1、學習ADS開發(fā)環(huán)境的使用;

      2、學習和掌握ADS環(huán)境下的匯編語言及C語言程序設計;

      3、學習和掌握匯編語言及C語言的混合編程方法。

      二、實驗內(nèi)容

      1、編寫和調(diào)試匯編語言程序;

      2、編寫和調(diào)試C語言程序;

      3、編寫和調(diào)試匯編語言及C語言的混合程序;

      4、編寫程序測試多寄存器傳送指令的用法。

      三、實驗原理

      ADS全稱為ARM Developer Suite,是ARM公司推出的新一代ARM集成開發(fā)工具。現(xiàn)在常用的ADS版本是ADS1.2,它取代了早期的ADS1.1和ADS1.0。

      ADS用于無操作系統(tǒng)的ARM系統(tǒng)開發(fā),是對裸機(可理解成一個高級單片機)的開發(fā)。ADS具有極佳的測試環(huán)境和良好的偵錯功能,它可使硬件開發(fā)工作者更深入地從底層去理解ARM處理器的工作原理和操作方法,為日后自行設計打基礎,為BootLoader的編寫和調(diào)試打基礎。

      1.ADS軟件的組成

      ADS由命令行開發(fā)工具、ARM運行時庫、GUI開發(fā)環(huán)境(CodeWarrior和AXD)、實用程序、支持軟件等組成。

      2.GUI開發(fā)環(huán)境

      ADS GUI開發(fā)環(huán)境包含CodeWarrior和AXD兩種,其中Code Warrior是集成開發(fā)工具,而AXD是調(diào)試工具。

      使用匯編語言進行編程簡單、方便,適用于初始化硬件代碼、啟動代碼等。匯編語言具有一些相同的基本特征:

      1.一條指令一行。

      2.使用標號(label)給內(nèi)存單元提供名稱,從第一列開始書寫。3.指令必須從第二列或能區(qū)分標號的地方開始書寫。4.注釋必須跟在指定的注釋字符后面,一直書寫到行尾。

      在ARM匯編程序中,每個段必須以AREA作為段的開始,以碰到下一個AREA作為該段的結(jié)束,段名必須唯一。程序的開始和結(jié)束需以ENTRY和END來標識。嵌入式C語言設計是利用基本的C語言知識,面向嵌入式工程實際應用進行程序設計。為了使單獨編譯的C語言程序和匯編程序之間能夠相互調(diào)用,必須為子程序之間的調(diào)用規(guī)定一定的規(guī)則。ATPCS就是ARM程序和Thumb程序中子程序調(diào)用的基本規(guī)則。

      四、實驗過程與關鍵代碼分析

      1.創(chuàng)建項目工程

      在File菜單中選擇New命令,打開一個新建工程對話框。在Project選項卡下,選擇ARM Executable Image, 然后在Project name文本框里輸入項目名稱,點擊確定。彈出工程窗口。

      選擇File菜單中的New命令,選擇File標簽頁,在File name文本框中輸入要創(chuàng)建的文件名。匯編程序以.s結(jié)尾,c程序以.c結(jié)尾。在Location文本框中指定文件的存放位置,選中Add to Project,在Targets中選中DebugRel,單擊確定關閉窗口。

      2.用匯編語言設計程序?qū)崿F(xiàn)10的階乘

      AREA EXAMPLE, CODE, READONLY ENTRY start MOV R0, #10 MOV R1, #1 LOOP MUL R0, R0, R1 SUB R0, R0, 1 CMP R0, #1 BHI LOOP END 在這個程序中,我們首先對R0和R1賦值,將R0作為一個變量,而R1作為一個存貯階乘值的寄存器。在每進行一次乘法之后,將R0減1。同時在做完減法后進行判斷,如果此時R0大于1,則返回繼續(xù)乘法,否則結(jié)束程序,輸出結(jié)果。

      3.用調(diào)用子程序的方法實現(xiàn)1!+2!+3!+?+10!,代碼如下: asmp.s

      AREA JC, CODE, READONLY

      EXPORT JCP

      ENTRY JCP

      ADD R3, R0, #1

      MOV R2, #1

      MOV R1, #1 LOOP MUL R0, R1, R2

      MOV R1, R0

      ADD R2, R2, #1

      CMP R2, R3

      BNE LOOP

      NOP

      NOP

      MOV PC, LR

      END

      PROGC.c #include Extern int JCP(int N)

      int main(){ int res=0;int m=10;int i;for(i=1;i<=m;i++)

      res=res+JCP(i);printf(“The result =%dn”,res);return 0;} 在這個程序中,主程序由c語言完成作求和,子程序由匯編語言寫成作階乘。

      5.實現(xiàn)字符串的逆序復制TEXT1=“HELLO”=>TEXT2=“OLLEH”

      AREA invstring, CODE, READONLY start

      ADR R1,TEXT1

      ADR R2,TEXT2

      MOV R3, #0 LOOP

      LDRB R0,[R1], #1

      ADD R3,R3,#1

      CMP R0,#0

      BNE LOOP

      SUB R1,R1,#2

      LOOP1

      LDRB R0,[R1], #-1

      STRB R0,[R2], #1

      SUB R3,R3, #1

      CMP R3,#1

      BNE LOOP1

      MOV R5,#&55

      TEXT1

      TEXT2 NOP =“HELLO”,0 ALIGN =“OELLH” END

      五、實驗小結(jié)

      在這次實驗中,學會了如何使用匯編程序進行編程。對匯編程序編程一些基本的要求有了一定的了解,學習了C語言的語法和在其中調(diào)用匯編程序的方法。學會了利用CodeWarrior IDE開發(fā)C和ARM匯編代碼。學會了在AXD中進行代碼調(diào)試的方法和過程,對AXD的調(diào)試有初步的了解。,實驗二嵌入式Linux交叉開發(fā)環(huán)境的建立

      一、實驗目的

      1、掌握嵌入式Linux交叉開發(fā)環(huán)境的建立方法

      2、學習和掌握Linux常用命令

      3、學習和掌握vi編輯器的使用

      二、實驗內(nèi)容

      1、搭建嵌入式Linux交叉開發(fā)環(huán)境

      2、熟悉Linux的常用命令

      3、熟悉vi編輯器的常用命令

      三、實驗原理

      Linux系統(tǒng)是UNIX系統(tǒng)的分支,是UNIX的微機版。Linux具有異常豐富的驅(qū)動程序資源,支持各種主流的硬件設備與技術。Linux包含了現(xiàn)代的UNIX操作系統(tǒng)的所有功能特性,這些功能包括多任務、虛擬內(nèi)存、虛擬文件系統(tǒng)、進程間通信、對稱所處理器、多用戶支持等。

      Vi編輯器是所有UNIX和Linux下的標準編輯器。它包含3種工作模式。嵌入式系統(tǒng)是專用的計算機系統(tǒng),它對系統(tǒng)的功能、可靠性、成本、體積、功耗等有嚴格的要求。大部分嵌入式系統(tǒng)沒有大容量存儲設備,一般不能安裝大型開發(fā)軟件,系統(tǒng)的開發(fā)需要采用交叉開發(fā)模式。

      四、實驗過程與關鍵代碼分析

      實驗用的是UP-NetARM2410-S試驗箱,里面配有三星的芯片S3c2410X。打開電腦上VMWare軟件,在Windows系統(tǒng)下啟動虛擬機里的Linux系統(tǒng)。接著需要

      1.宿主機的環(huán)境搭建

      下載并運行VMWare,根據(jù)向?qū)?chuàng)建一臺新虛擬機并選擇Linux作為客戶操作系統(tǒng),再根據(jù)向?qū)О惭bRedHat Linux 9.0。

      2.虛擬機中啟動Linux操作系統(tǒng)

      使用root登陸,用戶名為root,密碼為123456。之后對共享文件設置進行調(diào)整:打開settings界面,打開shared folders功能,同時將路徑設置到有課前下載的軟件的目錄下。

      3.開發(fā)工具軟件的安裝(1)安裝gcc 打開Linux后,打開終端窗口,在共享的目錄下找到install.sh并運行,命令如下: ls./ install.sh 安裝程序?qū)⒆詣咏?arm2410s目錄,并將所有的開發(fā)軟件包安裝到/arm2410s 目錄下,同時自動配置編譯環(huán)境,建立合適的符號鏈接。安裝完成后在目錄/opt/host/armv4l/bin/下應該能看到主編譯器。(2)配置PATH路徑

      vi.bash.profile 將里面PATH變量改為PATH=$PATH:$HOME/bin:/opt/host/armv41/bin/;存盤后執(zhí)行

      source.bash_profile 以后armv4l-unknown-linux-gcc將被自動搜索到

      4.宿主機上的開發(fā)環(huán)境配置(1)配置IP地址

      ifconfig eth0 192.168.0.121 命令配置了宿主機的IP地址。然后打開網(wǎng)絡配置窗口,重新探測MAC地址。重新激活。(2)關閉防火墻

      單擊“Red”菜單→“系統(tǒng)設置”→“安全級別”→打開“安全級別配置”窗口,選擇“無防火墻選項。”(3)配置NFS。

      單擊“Red”菜單→“系統(tǒng)設置”→“服務器設置”→“服務”,在“服務配置”窗口中勾選nfs,單擊“開始”(4)NFS設置

      單擊“Red”菜單→“系統(tǒng)設置”→“服務器設置”→“NFS服務器”,打開“NFS服務器配置”窗口,設置NFS共享。

      然后在NFS服務器中增加主機IP地址的鏈接許可和目錄。完成配置。

      5.目標機的信息輸出

      Windows系統(tǒng)下,“開始”→“所有程序”→“附件”→“通訊”→“超級終端”,新建一個通信終端。區(qū)號、電話號碼隨意輸入。設置每秒位數(shù)為“115200”,數(shù)據(jù)位為“8”,無奇偶校驗,停止位為“1”,無數(shù)據(jù)流控制。單擊“確定”。

      6.程序的運行

      打開超級終端,啟動Linux,屏幕顯示:

      [/mnt/yaffs] 在超級終端上執(zhí)行掛載命令:

      [/mnt] mount –t nfs 192.168.0.121:/arm2410s /mnt/nfs 掛載成功后可執(zhí)行程序。

      五、實驗小結(jié)

      在這次實驗中,學會建立Linux交叉開發(fā)環(huán)境,學會了ls和vi,cd等常用的Linux命令,并掌握了Vi編輯器的使用方法。同時知道了如何在搭建失敗時尋找錯誤進行排錯。

      實驗三嵌入式Linux環(huán)境下的程序設計

      一、實驗目的

      1、掌握嵌入式Linux環(huán)境下的程序設計方法

      2、學會編寫Makefile文件

      二、實驗內(nèi)容

      1、熟悉嵌入式教學實驗箱的使用

      2、編寫C程序和Makefile文件

      3、編譯程序產(chǎn)生可執(zhí)行程序

      4、完成主機的掛載和程序的執(zhí)行

      三、實驗原理

      在嵌入式Linux環(huán)境下的程序設計方法有一下幾個步驟:

      1.編寫源程序

      2.編寫Makefile文件 3.編譯程序

      4.運行和調(diào)試程序

      5.將生產(chǎn)的可執(zhí)行文件加入文件系統(tǒng)。

      前三個步驟在宿主機上完成,后面的步驟在目標機上完成。

      四、實驗過程與關鍵代碼分析

      1.建立工作目錄

      mkdir hello cd hello

      2.編寫源程序

      用vi編輯器編輯Hello.c文件

      vi Hello.c 在Vi中輸入源程序如下:

      #include main(){

      printf(“hello world n”);}

      3.編寫Makefile文件

      vi Makefile 在vi中編輯Makefile文件如下:

      CC= armv4l-unknown-linux-gcc EXEC = hello OBJS = hello.o CFLAGS += LDFLAGS+=-static all: $(EXEC)$(EXEC):(OBJS)$(CC)$(LDFLAGS)–o $@ $(OBJS)clean:

      -rm –f $(EXEC)*.elf *.gdb *.o

      4.編譯程序

      在hello目錄下運行“make”來編譯程序。

      make clean

      make 編譯成功后,生成可執(zhí)行文件Hello.o。

      5.下載調(diào)試

      在宿主機上啟動nfs服務,并將/arms2410s設置為共享目錄。接下來啟動超級終端,建立通訊,掛載。

      [/mnt] mount –t nfs 192.168.0.121:/arm2410s /mnt/nfs 掛載成功后,進入/mnt/nfs,再進入/mnt/nfs/hello,直接運行剛剛編譯生成的可執(zhí)行文件Hello.o,查看運行結(jié)果

      cd hello./hello 可以看見“Hello world”

      只需要掛載一次便可,只要實驗箱沒有重啟,就可以一直保持連接。反復修改、編譯、調(diào)試,直至程序調(diào)試通過。

      6.可執(zhí)行文件加入文件系統(tǒng)

      程序調(diào)試通過后,可以把可執(zhí)行文件拖放到usr/bin目錄下,然后使用mkcramfs制作工具生成新的文件系統(tǒng)。當系統(tǒng)啟動后,就可以在相應目錄下執(zhí)行可執(zhí)行程序hello.五、實驗小結(jié) 在這次實驗中,學會了在嵌入式Linux環(huán)境下設計程序。同時知道了如何對目標機進行掛載。以及如何在發(fā)現(xiàn)掛載不成功尋找錯誤進行修改。另外在編譯文件時需要注意的也都有所了解。

      實驗四多線程程序設計

      一、實驗目的1、2、二、實驗內(nèi)容1、2、3、4、三、實驗原理

      四、實驗過程與關鍵代碼分析

      五、實驗小結(jié)

      3+

      第五篇:實習總結(jié)-嵌入式ARM

      實訓總結(jié)

      班級 卓越1301姓名***

      通過這段時間的學習使我學到了很多知識,并且了解到ARM的應用以及對開發(fā)板的應用,為以后的學習奠定了一定的基礎。

      嵌入式系統(tǒng)一般定義為以應用為中心、以計算機技術為基礎,軟硬件可裁剪,應用系統(tǒng)對功能、可靠性、成本、體積、功耗和應用環(huán)境有特殊要求的專用計算機系統(tǒng)。是將應用程序、操作系統(tǒng)和計算機硬件集成在一起的系統(tǒng)這是從技術角度。從系統(tǒng)角度上是設計完成復雜功能的硬件和軟件,并使其緊密耦合在一起的計算機系統(tǒng)。

      廣義上講,凡是帶有微處理器的專用軟硬件系統(tǒng)都可稱為嵌入式系統(tǒng)。如各類單片機和DSP系統(tǒng)。這些系統(tǒng)在完成較為單一的專業(yè)功能時具有簡潔高效的特點。但由于他們沒有操作系統(tǒng),管理系統(tǒng)硬件核軟件的能力有限,在實現(xiàn)復雜多任務功能時,往往困難重重,甚至無法實現(xiàn)。從狹義上講,我們更加強調(diào)那些使用嵌入式微處理器構成獨立系統(tǒng),具有自己操作系統(tǒng),具有特定功能,用于特定場合的嵌入式系統(tǒng)。

      嵌入式的應用也比較廣泛涉及軍事國防、工業(yè)控制、消費電子和網(wǎng)絡。在家用方面更是數(shù)字電視、信息家電、智能玩具、手持通訊、存儲設備的核心。

      在ARM指令集中了解到ARM的尋址方式以及它的的特性,具有高效、快速的特點,還有Thumb指令集具有靈活、小巧的特點。

      在這次實訓中做了兩個項目,一個是LED燈,實現(xiàn)LED燈的點亮是比較簡單的,通過查找手冊可以很快的了解到要使用的寄存器和方法,另一個項目是DS18B20這個比較復雜,除了要掌握對寄存器的使用,還要對了解對串口的初始化,讀寫字節(jié)等等。

      感謝這次實訓,通過這次的實訓項目,使我大體了解制作項目的步驟,了解了嵌入式技術的掌握是需要一個過程的。實事求是的說,嵌入式技術的全面掌握是有相當難度的,通過積累和動手總會有收獲的,從實驗中也明白了一個大的項目并不是一個人可以完成的,團隊協(xié)作很重要。

      姓名:***

      年級:卓越1301

      2014-7-5

      下載基于ARM的嵌入式Linux終端的研討與實現(xiàn).word格式文檔
      下載基于ARM的嵌入式Linux終端的研討與實現(xiàn)..doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發(fā)現(xiàn)有涉嫌版權的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權內(nèi)容。

      相關范文推薦

        ARM與嵌入式Linux的入門建議.

        ARM與嵌入式linux的入門建議 ARM與嵌入式linux的入門建議 類別:嵌入式系統(tǒng)由于很多人總問這個問題,所以這里做一個總結(jié)文檔供大家參考。這里必須先說明,以下的步驟都是針對Linu......

        ARM嵌入式技術復習總結(jié)

        第一章 1.嵌入式系統(tǒng)定義/概念:嵌入式系統(tǒng)就是嵌入到對象體中的專用計算機系統(tǒng)。三要素:嵌入、專用、計算機。嵌入性:嵌入到對象體系中,有對象環(huán)境要求,專用性:軟、硬件按對象要求......

        ARM嵌入式基礎教程知識點總結(jié)

        1、舉出書本中未提到的嵌入式在每種異常模式下都有一個對統(tǒng):嵌入式μCLinux、Windows 系統(tǒng)的例子:紅綠燈控制,數(shù)字應的物理寄存器——程序狀態(tài)CE、VxWorks、μC/OS-II 空調(diào),......

        ARM與嵌入式linux的入門建議(六步曲).

        【轉(zhuǎn)帖】 ARM與嵌入式linux的入門建議(六部曲) 由于很多人總問這個問題,所以這里做一個總結(jié)供大家參考。這里必須先說明,以下的步驟都是針對Linux系統(tǒng) 的,并不面向WinCE。也許你......

        基于ARM的嵌入式RIFD讀寫器設計.

        基于ARM的嵌入式RIFD讀寫器設計 基于ARM的嵌入式RIFD讀寫器設計 類別:汽車電子摘要:RFID(Radio Frequency Identification)系統(tǒng)是高效的信息識別、采集系統(tǒng)。本文選用射頻芯片......

        ARM嵌入式系統(tǒng)的問題總結(jié)分析.

        ARM嵌入式系統(tǒng)的問題總結(jié)分析 摘要:本文是作者關于嵌入式系統(tǒng)一些基本問題的思考和總結(jié)。主要是從嵌入式處理器與硬件、ARM處理器的優(yōu)勢、嵌入式軟件、嵌入式系統(tǒng)教學等方面......

        ARM嵌入式linux復習心得總結(jié)1

        2011.10.9 Evo楊 ARM嵌入式linux復習心得總結(jié)1: 一、Linux定制安裝: 從新安裝配置了一遍Linux,我使用的是Vmware7.0安裝RHEL5.5,對于Linux的安裝主要是要選擇定制安裝也就是Vmwa......

        ARM嵌入式linux復習心得總結(jié)1

        2011.10.9 Evo楊 ARM嵌入式linux復習心得總結(jié)1: 一、Linux定制安裝: 從新安裝配置了一遍Linux,我使用的是Vmware7.0安裝RHEL5.5,對于Linux的安裝主要是要選擇定制安裝也就是Vmwa......