精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

分析GEC2410開發板和Linux的特點

電子工程師 ? 來源:儀器儀表用戶 ? 作者:張磊;溫陽東 ? 2021-06-12 12:23 ? 次閱讀

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

0 引言

目前,隨著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服務和制作交叉調試器的方法和步驟。這樣就可以在此基礎上進行各種驅動程序和應用程序的開發。

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • PC
    PC
    +關注

    關注

    9

    文章

    2066

    瀏覽量

    154030
  • Linux
    +關注

    關注

    87

    文章

    11230

    瀏覽量

    208932
  • IP
    IP
    +關注

    關注

    5

    文章

    1657

    瀏覽量

    149334
  • 調試器
    +關注

    關注

    1

    文章

    300

    瀏覽量

    23691
收藏 人收藏

    評論

    相關推薦

    【北京迅為】itop-3562開發板Linux系統中使用NPU

    【北京迅為】itop-3562開發板Linux系統中使用NPU
    的頭像 發表于 11-25 14:52 ?118次閱讀
    【北京迅為】itop-3562<b class='flag-5'>開發板</b>在<b class='flag-5'>Linux</b>系統中使用NPU

    【RA8D1試用活動】RA8D1B-CPKCOR開發板移植linux

    【RA8D1試用活動】RA8D1B-CPKCOR開發板移植linux
    的頭像 發表于 11-16 01:02 ?142次閱讀
    【RA8D1試用活動】RA8D1B-CPKCOR<b class='flag-5'>開發板</b>移植<b class='flag-5'>linux</b>

    正點原子fpga開發板不同型號

    處理器和FPGA邏輯單元。ZYNQ-7000系列的開發板通常具備以下特點: 低成本 :適合預算有限的個人和教育機構。
    的頭像 發表于 11-13 09:30 ?295次閱讀

    i.MX Linux開發實戰指南—基于野火i.MX系列開發板

    電子發燒友網站提供《i.MX Linux開發實戰指南—基于野火i.MX系列開發板.pdf》資料免費下載
    發表于 10-10 17:23 ?9次下載

    北京迅為RK3568開發板嵌入式學習之Linux驅動全新更新-CAN+

    北京迅為RK3568開發板嵌入式學習之Linux驅動全新更新-CAN+
    的頭像 發表于 09-04 15:29 ?409次閱讀
    北京迅為RK3568<b class='flag-5'>開發板</b>嵌入式學習之<b class='flag-5'>Linux</b>驅動全新更新-CAN+

    嵌入式linux開發板怎么操作

    開發板概述 嵌入式Linux開發板是一種專門為嵌入式系統開發而設計的硬件平臺。它具有體積小、功耗低、性能高等特點,廣泛應用于工業控制、智能家
    的頭像 發表于 09-02 09:09 ?327次閱讀

    嵌入式linux開發板芯片的工作原理

    了處理器、存儲器、輸入/輸出接口等硬件資源的嵌入式系統開發平臺。它通常采用Linux操作系統作為底層軟件平臺,提供了豐富的開發工具和庫函數,方便開發者進行嵌入式系統
    的頭像 發表于 09-02 09:07 ?335次閱讀

    linux開發板與樹莓派的區別

    定義和用途 Linux開發板Linux開發板是一種基于Linux操作系統的嵌入式開發板,通常用
    的頭像 發表于 08-30 15:34 ?779次閱讀

    linux開發板如何編譯curl

    Linux開發板上編譯 curl 庫通常涉及到幾個步驟,包括準備開發環境、下載源代碼、配置編譯選項以及執行編譯和安裝過程。以下是一個基本的指南,幫助你在Linux
    的頭像 發表于 08-30 15:33 ?504次閱讀

    linux開發板和單片機開發的區別

    硬件架構 Linux開發板和單片機開發在硬件架構上有很大的區別。Linux開發板通?;贏RM、x86或其他處理器架構,具有較高的處理能力和
    的頭像 發表于 08-30 15:30 ?634次閱讀

    fpga開發板linux開發板區別

    FPGA開發板Linux開發板是兩種不同的硬件開發平臺,各自具有不同的特點和應用場景。在以下的文章中,我將詳細介紹FPGA
    的頭像 發表于 02-01 17:09 ?2087次閱讀

    arm開發板如何安裝linux系統

    安裝Linux系統到ARM開發板是一個復雜的過程,涉及到多個步驟和不同的工具。下面是一個詳實且細致的教程,包含了從準備工作到最終啟動Linux系統的所有步驟。 準備工作 在開始之前,需要準備以下
    的頭像 發表于 01-24 14:19 ?3030次閱讀

    基于全志V3S芯片DIY Linux開發板

    簡介:大佬已在硬創社開源了近50款開發板,動手能力極強,于去年年底開始接觸學習Linux,并由全志V3s、F1C200S等芯片開始上手DIY個人的Linux開發板
    的頭像 發表于 01-15 09:37 ?2516次閱讀
    基于全志V3S芯片DIY <b class='flag-5'>Linux</b><b class='flag-5'>開發板</b>

    DIY個人的Linux開發板教程

    作者簡介:大佬已在硬創社開源了近50款開發板,動手能力極強,于去年年底開始接觸學習Linux,并由全志V3s、F1C200S等芯片開始上手DIY個人的Linux開發板
    的頭像 發表于 01-07 09:52 ?1977次閱讀
    DIY個人的<b class='flag-5'>Linux</b><b class='flag-5'>開發板</b>教程

    STM32+Linux開發板應用手冊

    STM32 WIFI Linux 安卓智能控制開發板應用手冊
    發表于 12-21 11:04 ?3次下載