《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > ARM和Linux交叉開發環境的搭建過程
ARM和Linux交叉開發環境的搭建過程
摘要: 交叉開發環境是嵌入式Linux開發的基礎.后續的開發過程幾乎都是基于此環境的。而ARM作為一種高性能、低成本的嵌入式RISC微處理器。已成為應用最廣泛的嵌入式處理器。本文內容包括基于32位ARM920T核“GEC2410”開發板的硬件結構和嵌入式Linux交叉開發環境的概念和配置。
Abstract:
Key words :

  摘要:交叉開發環境是嵌入式Linux開發的基礎.后續的開發過程幾乎都是基于此環境的。而ARM作為一種高性能、低成本的嵌入式RISC微處理器。已成為應用最廣泛的嵌入式處理器。本文內容包括基于32位ARM920T核“GEC2410”開發板的硬件結構和嵌入式Linux交叉開發環境的概念和配置.開發工具的使用以及交叉調試器制作的方法。利用虛擬機在Windows操作系統下,為“GEC2410”開發板搭建了一個嵌入式Linux的運行平臺。

  目前,隨著ARM技術的日益成熟和廣泛應用,基于ARM核的微處理器已經成為嵌入式市場的主流。而建立面向ARM構架的嵌入式操作系統也就成為當前研究的熱點問題.在眾多的嵌入式操作系統中,許多開發人員都選擇Hnux,主要是因為它是源碼公開而且是免費的,可以讓任何人將其修改移植到自己的目標平臺系統里使用。系統可以通過配置內核,動態地加載和卸載內核模塊機制,可以方便地在內核中添加新的組件或卸載不再需要的內核組件。

  本文介紹了如何在Windows操作系統下利用Linux虛擬機、針對32位ARM920T內核的$3C2410微處理器實現嵌入式LintLx應用軟件的交叉開發環境,提出了一個比較完整的解決方案,并成功地為GEC2410開發板搭建了一個嵌入式應用軟件開發環境。

  1 GECMlO開發板硬件構成

  ARM處理器是一種支持16/32位雙指令集的高性能、低成本、低功耗的R ISC微處理器,目前已經占領了75%以I:的32位RISC嵌入式產品f仃場。本文所選用的ARM920T微處理器屬于中端產品,應用也十分廣泛。$3C2410是32位低功耗RISC宏單元,其工作頻率為203 MHz,同時支持Thumbl6位精。簡指令集,從而能以較小的存儲空間需求,獲得32位的系統性能。64M字節的SDRAM,由兩片K4S561632組成,工作在32位模式下;64M字節NAND Flash,采用的是K9F1208,可以兼容16M,32M或128M字節;10M以太網接口,采用的是CS8900Q3,帶傳輸和連接指示燈;2路UART串行口,波特率可高達115200bps,并具有RS232電乎轉換電路Embedded·ICE(20腳標準JTAG)接口和并口式jTAG接口,支持ADS,SDT軟件的卜.載和調試以及FLASH的燒寫。

  2 嵌入式Linux開發環境的搭建及開發工具的使用

  2.1宿主機——目標機模式

  進行項目開發前,先要做的是搭建一套基于Linux操作系統的應用開發環境,一般由目標板(GEC2410開發板)和宿主機(LiUUX虛擬機)所構成。如圖1所示。嵌入式系統通常是一個資源受限的系統,因此直接在嵌入式系統的硬件平臺上編寫軟件比較困難,有時候甚拿是不可能的.目前一般采用的解決辦法是首先在通用計算機上編寫程序,然后通過交叉編譯生成目標平臺七可以運行的二進制代碼格式,最后再下載到目標平臺上的特定位置.卜運行.用來編譯這種程序的編譯器就叫交叉編譯器。為了不跟本地編譯器混淆,交叉編澤器的名字一般都有前綴。例如:arm.1inux—gcc。交叉開發環境是指編譯、鏈接和調試嵌入式應用軟件的環境,它與運行嵌入式應用軟件的環境有所不同,通常采用宿主機/目標機模式。

 

  交叉開發環境

 

  2.2 Linux服務器交叉編譯環境的建立

  Linux服務器是嵌入式Linux內核編譯、應用程序開發、編譯等的公共平臺,在一個嵌入式系統的開發過程中,有許多工作需要通過它來完成。交叉編譯工具用于編譯在目標系統上運行的嵌入式Linux內核及應用程序,包括編譯器、連接器、調試器以及代碼轉換J二具等實用程序,一般以瓜縮軟件包的方式提供給我們,稱為開發工具鏈(Toolchain).目前基于ARM架構的交叉編澤工具鏈為:allll-liuux.gcc-2.95.3。

  1)GNU交叉工具鏈的下載

  從ARM官方網站F載刪.arm.tinux.org.ak,可以從該站點下載2.95.3工具鏈:

  ftp://tip.arm.Iinux.org.uk/pub/armlinux/toolehain/cross-2.95.3.tar.bz2

  2)cross-2.95.3.tar.bz2包的安裝步驟

  a.#mkdir/mr/local/arm;

  b.#cp CROSS一2.95.3.tar.bz2/usr/local/ann;

  C.#tar jxvf crog$一2.95.3.tar.bz2;

  d.添加環境變量:在文{牛/ete/bashrc文件最后添加:

  export PATH=/usr/local/arm/2.95.3/bin:$PATH:

  e.工具鏈安裝完成。

  2.3配置NFS服務的步驟

  NFS服務就是將宿主機的一個目錄通過網絡可以被掛載到其他計算機上。并且作為其他計算機的一個目錄,其目的就是讓不同的機器、不同的操作系統之間可以彼此共享文件。

  NFS的使用分服務器端和客戶端,其中服務器端提供要共享的文件,客戶端通過掛載“mount”這一動作實現對共享文件的訪問操作。下面主要介紹GEC24 10開發板的Linux系統與虛擬機的LintLx通過NFS實現文件共享的方法與步驟:

  1)在虛擬機linux配置nfs服務,編輯nfs配置文件/etdexports,設置共享目錄如:vi/etc/exports,添加:/root/nfs—share·(rw,sync,no—root—squash)。rW表示允許下位機讀寫該目錄,no_root_squash允許下位機以主機root用戶身份掛載根文件系統。

  2)在虛擬機linux啟動NFS服務:(修改配置文件后就需要蕈新啟動施服務)#/etc/init.d/nfs reSTart或者用命令:#service nfs restarto.

  3)防火墻的關閉。選擇系統設置一》安全級別,將安全級別改為“無防火墻”。

  4)用交叉網線連接PC機(虛擬機)與開發板,目的讓兩個linux處在同一個網絡內。

  開發板的ip地址是:192.168.2.223,因此配置虛擬機ip為192.168.2開頭的ip地址,如可用下列命令配置:#ifcONfigethO 192.168.2.23。

  5)在開發板linux系統中掛載虛擬機linux的NFS共享目錄,執行下列命令:#mkdir/tmp/nfs#mount—t nfs一0 nolock192.168.2.23:/root/nfs—share/trap/nfs。

  2.4交叉調試器的制作

  2.4.1交叉調試器的結構

  程序的調試足檢杏程序正確性、可靠性、穩定性的重要手段,也是應用程序開發必不可少的組成部分。嵌入式軟件開發過程中的交叉調試與本地軟件開發過程中的調試方式有所差別。本地軟件開發調試器與被調試的程序往往運行在同一臺計算機}:。而嵌入式軟件開發過程中,調試時采用的是在宿主機和目標機之間進行的交叉調試。調試器運行在宿主機,但被調試的進程卻是運行在目標板。調試器和被調試進程通過串口或者網絡進行通信,調試器可以控制、訪問被調試進程,讀取被調試進程的當前狀態,并能夠改變被調試進程的運行狀態。

  2.4.2制作交叉調試器的方法

  1)解壓源碼包:tar zxf gdb一6.0.tar.gz

  2)配置:cd gdb一6.0

  mkdir build..arm..1inux

  cd build..arm..1inux

  ../configure--target=arm·linux一一prefix=/usr/local/arm/2.95.3/

  3)編譯:make

  4)安裝:make install

  在/usr/locaL/arm/2.95.3/bin/目錄下生成alTfl-linuxgdb工具

  5)編譯生成針對f1.Eln處理器的gdbserver

  a.進入sdb源代碼包中的gdb$erver目錄

  cd sdb-6.0

  cd gdb/gdbserver

  b.配置生成gdbserver

  chmod U+X configure

  CC=arnl—linux—gcc./configure一一host=arm-linux

  c.Make,生成gdbserver、gdbreplay

  6)通過凼,將gdbserver/gdbreplay到目標板中

  7)啟動目標板上的gdbserversabserver 192.168.1.88:2345 cross-teat其中192.168.1.88是目標板的IP地址。2345是任意指定的端口,也可以是其他端口。

  8)啟動宿主機端arm.1inux-gdb調試器在宿主機的工作目錄中有對應的程序和源文件

  #arm·hnux-柚CI‘OS8一teat

  (gdb)target remote 192.168.1.88:2345

  連接遠程gdbserver

  (sab)b main

  設置斷點

  (Sdb)C運行

 

  3 結束語

  本文在分析了GEC2410開發板和Linux的特點的基礎上,介紹了嵌入式Linux開發平臺的搭建過程,并詳細介紹了配置NFS服務和制作交叉調試器的方法和步驟。這樣就可以在此基礎上進行各種驅動程序和應用程序的開發。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
伊人精品视频| 亚洲视屏在线播放| 亚洲一区二区在线观看视频| 久久成人免费视频| 亚洲中字黄色| 一区二区三区日韩欧美| 亚洲精品乱码久久久久久蜜桃91| 欧美日韩一区视频| 欧美激情无毛| 欧美不卡三区| 免费欧美在线| 麻豆久久婷婷| 免播放器亚洲一区| 猛男gaygay欧美视频| 老牛嫩草一区二区三区日本 | 亚洲免费精品| 亚洲人成在线观看一区二区| 在线亚洲欧美视频| 夜夜夜久久久| 亚洲少妇一区| 亚洲欧美www| 午夜欧美理论片| 欧美一级夜夜爽| 久久国产一区二区| 亚洲国产成人不卡| 亚洲一区精彩视频| 亚洲性色视频| 亚洲欧美日韩综合| 欧美一区二区视频观看视频| 久久大综合网| 亚洲国产女人aaa毛片在线| 亚洲黄色精品| 亚洲精品一区二区三区不| 日韩特黄影片| 欧美系列电影免费观看| 牛牛国产精品| 欧美日本三级| 欧美日韩中文字幕| 国产精品激情| 国内精品嫩模av私拍在线观看| 欧美国产日韩一区二区| 欧美日韩国产bt| 国产精品久久久久久影视| 欧美日韩成人| 免费一级欧美片在线观看| 欧美激情一区二区三区高清视频 | 午夜日韩av| 欧美资源在线观看| 亚洲精品极品| 亚洲一区二区在线播放| 久久精品欧美日韩| 欧美福利在线观看| 国产精品免费在线 | 欧美电影免费观看高清| 久久国产精品免费一区| 麻豆精品视频| 欧美日韩亚洲系列| 国产美女诱惑一区二区| 亚洲高清视频在线观看| 一区二区黄色| 欧美一区二区久久久| 亚洲精品欧美精品| 午夜欧美大尺度福利影院在线看| 一本色道久久88精品综合| 亚洲三级国产| 亚洲一区二区在线观看视频| 久久免费精品日本久久中文字幕| 久久九九99视频| 欧美激情久久久久久| 国产精品日本精品| 亚洲国产精品久久| 亚洲精品乱码久久久久久| 亚洲国产一区二区三区高清| 国产精品99久久久久久久久| 亚洲成在线观看| 亚洲欧美成人一区二区在线电影| 亚洲亚洲精品在线观看 | 亚洲精品精选| 欧美一区二区三区四区在线 | 精品1区2区3区4区| 中国成人亚色综合网站| 亚洲国产色一区| 亚洲欧美日本国产有色| 欧美成人日本| 国产一区二区三区观看| 狠狠色狠狠色综合日日小说| 99日韩精品| 91久久国产综合久久91精品网站| 亚洲日本成人女熟在线观看| 欧美一区二区三区免费在线看 | 亚洲国产视频一区| 欧美在线国产精品| 亚洲免费小视频| 欧美激情视频在线免费观看 欧美视频免费一 | 在线观看一区二区视频| 亚洲欧美中文在线视频| 宅男在线国产精品| 欧美大尺度在线观看| 国模私拍视频一区| 亚洲男人的天堂在线| 亚洲午夜在线观看视频在线| 欧美电影免费| 亚洲大片精品永久免费| 久久超碰97中文字幕| 性欧美xxxx大乳国产app| 欧美日韩亚洲三区| 亚洲激情自拍| 亚洲精品护士| 久久久精品久久久久| 国产人久久人人人人爽| 国产视频欧美视频| 99视频一区二区| 欧美有码在线观看视频| 久久成人人人人精品欧| 久久久蜜臀国产一区二区| 欧美视频中文一区二区三区在线观看| 国产精品福利在线| 亚洲日本欧美日韩高观看| 亚洲电影免费观看高清完整版在线| 欧美专区18| 99视频日韩| 欧美黑人国产人伦爽爽爽| 国语自产精品视频在线看8查询8| 亚洲国产精品久久久久婷婷884| 亚洲精品免费在线| 亚洲高清免费视频| 一区二区三区成人精品| 久久精品一区蜜桃臀影院| 国产一区二区三区高清在线观看| 亚洲第一二三四五区| 欧美一区二区成人| 日韩视频一区二区三区在线播放免费观看 | 日韩天堂在线视频| 免费成人av在线| 好吊妞这里只有精品| 先锋影音网一区二区| 午夜精品久久久久久久99樱桃| 久久人人97超碰精品888| 国产精品素人视频| 中日韩午夜理伦电影免费| 日韩午夜免费| 久久精品30| 国产精品视频一二三| 韩日视频一区| 欧美一区二区三区久久精品茉莉花| 亚洲视频播放| 欧美精品日韩综合在线| 国产欧美一区二区精品忘忧草| 有码中文亚洲精品| 99精品国产在热久久婷婷| 日韩午夜精品视频| 欧美精品一二三| 亚洲精品日韩欧美| 亚洲蜜桃精久久久久久久| 欧美成人综合在线| 亚洲黑丝一区二区| 一区二区免费在线视频| 欧美日韩亚洲天堂| 国产精品99久久不卡二区| 亚洲欧美日韩精品久久| 国产一区二区精品久久99| 日韩一区二区精品在线观看| 一区二区三区波多野结衣在线观看| 久久久999精品免费| 国产日本精品| 久久精品一区二区三区中文字幕 | 欧美国产一区二区三区激情无套| 国产精品私拍pans大尺度在线| 亚洲国产你懂的| 一本色道久久综合狠狠躁篇的优点 | 麻豆9191精品国产| 亚洲国产精品t66y| 99精品视频免费观看视频| 欧美日韩亚洲在线| 亚洲永久免费视频| 久久精品三级| 国外成人网址| 亚洲小说区图片区| 国产欧美亚洲日本| 亚洲高清视频在线观看| 欧美一区在线看| 激情久久久久久| 99ri日韩精品视频| 欧美日韩国产在线| 亚洲天堂偷拍| 久久久www成人免费精品| 国产精品毛片大码女人| 午夜欧美不卡精品aaaaa| 美女黄色成人网| 亚洲美女中文字幕| 久久精品噜噜噜成人av农村| 欧美 日韩 国产精品免费观看| 韩国成人福利片在线播放| 亚洲精品少妇30p| 国产精品久久久久一区二区三区 | 亚洲综合国产激情另类一区| 久久久久久综合网天天| 亚洲毛片在线| 亚洲精品欧美极品| 久久亚洲欧美国产精品乐播|