導航:首頁 > 源碼編譯 > arm9交叉編譯開發嵌入式板子

arm9交叉編譯開發嵌入式板子

發布時間:2022-09-24 10:20:28

㈠ 做一個嵌入式linux系統究竟要做哪些工作

1、Linux 基礎

安裝Linux操作系統 Linux文件系統 Linux常用命令 Linux啟動過程詳解 熟悉Linux服務能夠獨立安裝Linux操作系統
能夠熟練使用Linux系統的基本命令 認識Linux系統的常用服務安裝Linux操作系統 Linux基本命令實踐 設置Linux環境變數 定製Linux的服務
Shell 編程基礎使用vi編輯文件 使用Emacs編輯文件 使用其他編輯器

2、Shell 編程基礎

Shell簡介 認識後台程序Bash編程熟悉Linux系統下的編輯環境 熟悉Linux下的各種Shell 熟練進行shell編程熟悉vi基本操作
熟悉Emacs的基本操作 比較不同shell的區別 編寫一個測試伺服器是否連通的shell腳本程序 編寫一個查看進程是否存在的shell腳本程序
編寫一個帶有循環語句的shell腳本程序

3、Linux 下的C 編程基礎

linux C語言環境概述 Gcc使用方法 Gdb調試技術 Autoconf Automake Makefile 代碼優化
熟悉Linux系統下的開發環境 熟悉Gcc編譯器 熟悉Makefile規則編寫Hello,World程序 使用 make命令編譯程序 編寫帶有一個循環的程序
調試一個有問題的程序

4、嵌入式系統開發基礎

嵌入式系統概述交叉編譯 配置TFTP服務 配置NFS服務 下載Bootloader和內核
嵌入式Linux應用軟體開發流程熟悉嵌入式系統概念以及開發流程 建立嵌入式系統開發環境製作cross_gcc工具鏈 編譯並下載U-boot
編譯並下載Linux內核 編譯並下載Linux應用程序

5、嵌入式系統移植

Linux內核代碼 平台相關代碼分析 ARM平台介紹 平台移植的關鍵技術 移植Linux內核到 ARM平台 了解移植的概念
能夠移植Linux內核移植Linux2.6內核到 ARM9開發板

6、嵌入式 Linux 下串口通信

串列I/O的基本概念 嵌入式Linux應用軟體開發流程 Linux系統的文件和設備 與文件相關的系統調用 配置超級終端和MiniCOM
能夠熟悉進行串口通信 熟悉文件I/O 編寫串口通信程序 編寫多串口通信程序

7、嵌入式系統中多進程程序設計

Linux系統進程概述 嵌入式系統的進程特點 進程操作 守護進程 相關的系統調用了解Linux系統中進程的概念 能夠編寫多進程程序編寫多進程程序
編寫一個守護進程程序 sleep系統調用任務管理、同步與通信 Linux任務概述任務調度 管道 信號 共享內存 任務管理 API 了解Linux系統任務管理機制
熟悉進程間通信的幾種方式 熟悉嵌入式Linux中的任務間同步與通信編寫一個簡單的管道程序實現文件傳輸 編寫一個使用共享內存的程序

8、嵌入式系統中多線程程序設計

線程的基礎知識 多線程編程方法 線程應用中的同步問題了解線程的概念 能夠編寫簡單的多線程程序編寫一個多線程程序

9、嵌入式 Linux 網路編程

網路基礎知識 嵌入式Linux中TCP/IP網路結構 socket 編程 常用 API函數 分析Ping命令的實現 基本UDP套介面編程 許可證管理
PPP協議 GPRS 了解嵌入式Linux網路體系結構 能夠進行嵌入式Linux環境下的socket 編程 熟悉UDP協議、PPP協議 熟悉GPRS
使用socket 編寫代理伺服器 使用socket 編寫路由器 編寫許可證伺服器 指出TCP和UDP的優缺點 編寫一個web伺服器 編寫一個運行在
ARM平台的網路播放器

10、GUI 程序開發

GUI基礎 嵌入式系統GUI類型 編譯QT 進行QT開發熟悉嵌入式系統常用的GUI 能夠進行QT編程使用QT編寫「Hello,World」程序
調試一個加入信號/槽的實例 通過重載QWidget 類方法處理事件

11、Linux 字元設備驅動程序

設備驅動程序基礎知識 Linux系統的模塊 字元設備驅動分析 fs_operation結構 載入驅動程序了解設備驅動程序的概念
了解Linux字元設備驅動程序結構 能夠編寫字元設備驅動程序編寫Skull驅動 編寫鍵盤驅動 編寫I/O驅動 分析一個看門狗驅動程序
對比Linux2.6內核與2.4內核中字元設備驅動的不同Linux 塊設備驅動程序塊設備驅動程序工作原理 典型的塊設備驅動程序分析
塊設備的讀寫請求隊列了解Linux塊設備驅動程序結構 能夠編寫簡單的塊設備驅動程序比較字元設備與塊設備的異同 編寫MMC卡驅動程序 分析一個文件系統
對比Linux2.6內核與2.4內核中塊設備驅動的不同

12、文件系統

虛擬文件系統 文件系統的建立 ramfs內存文件系統 proc文件系統 devfs 文件系統 MTD技術簡介 MTD塊設備初始化
MTD塊設備的讀寫操作了解Linux系統的文件系統 了解嵌入式Linux的文件系統 了解MTD技術 能夠編寫簡單的文件系統為 ARM9開發板添加 MTD支持
移植JFFS2文件系統 通過proc文件系統修改操作系統參數 分析romfs 文件系統源代碼 創建一個cramfs 文件系統

無論選擇哪一方向,基本的linux的知識是需要具備的,其他還需要掌握的知識有ARM(最常用的一款嵌入式處理器)和C語言編程,每一方面知識的掌握熟練程度都最終決定了個人進行嵌入式linux開發的綜合能力。

更多詳情來源:《華清遠見嵌入式學院》

㈡ 我想學嵌入式LINUX驅動開發,很糾結到底選ARM9,ARM11還是CORTEX-A8的開發板

首先我沒用過cortex-A8,不做討論。
我最開始學的是ARM7,然後用到arm9、arm11、cortex-M4。
1、arm9和arm11區別不大,只是性能上的提高,然後arm11增加了圖形處理的能力。
2、arm7都還不過時。外面找工作,我是剛好是應屆生,這個對我來說實際的經驗要求不高。但你用AR9\ARM11肯定不是過時的。
3、只要你學透了arm架構的任何一款處理器的驅動開發,上手其他arm架構估計不超過1天(8小時),因為驅動開發很多地方時相通的。驅動開發對硬體架構先不說,難度在於linux系統,尤其是內核。
4、你說對了,這是相當重要的一部分,如果這些都不熟悉,那麼對於這個arm架構你是沒有掌握的,尤其是驅動工程師!

從你問的問題來看,我不建議你使用cortexA8的處理器。A系列面向的是應用,如手持設備等,復雜度很高。
這兒建議你選用培訓機構使用過的板子,我推薦基於ARM11的OK6410板子。有培訓機構的配套資料,很多很全,遇到問題網上搜也能很快解決。樓上提到ARM9也是相當不錯的選擇,尤其是mini2440,LINUX內核直接支持。最近我有幾個同學也去華清遠見培訓,他們使用的是款A8處理器的板子。不過這個東西出來的學習資料很少,非常不適合你入手。除非你也去培訓,那是題外話,修行靠個人。
總的來說,不要糾結使用哪個處理器,他們都是相通的,先買一個板子來用起,那才是王道。對了,OK6410能跑android

㈢ ARM9的開發環境:ARM9沒有一個像KEIL4那樣的舒服的開發環境嗎

keil 就是arm公司的 你覺得可能會不支持arm9么? 根據你所用晶元的型號去創建工程就行了

㈣ 想要從事 linux嵌入式方面的應用軟體開發。我該怎麼學呢

韋東山的那本書挺經典,卓越的鏈接:
http://www.amazon.cn/mn/detailApp/ref=sr_1_1?_encoding=UTF8&s=books&qid=1274700325&asin=B001DCEA46&sr=8-1

《嵌入式Linux應用開發完全手冊》以S3C2410、S3C2440開發板為例,從分析硬體上電執行的第一條指令開始,到構造出一個類似PDA、基於Linux的桌面GUI系統,帶領讀者學習、掌握從最底層到最高層的軟體編寫方法。

《嵌入式Linux應用開發完全手冊》全面介紹了嵌入式Linux系統開發過程中,從底層系統支持到上層GUI應用的方方面面,內容涵蓋Linux操作系統的安裝及相關工具的使用、配置,嵌入式編程所需要的基礎知識(交叉編譯工具的選項設置、Makefile語法、ARM匯編指令等),硬體部件的使用及編程(囊括了常見硬體,比如UART、I*IC、LCD等),UBoot、Linux內核的分析、配置和移植,根文件系統的構造(包括移植busybox、glibc、製作映象文件等),內核調試技術(比如添加kgdb補丁、棧回溯等),驅動程序編寫及移植(LED、按鍵、擴展串口、網卡、硬碟、SD卡、LCD和USB等),GUI系統的移植(包含兩個GUI系統:基於Qtopia和基於X),應用程序調試技術。

《嵌入式Linux應用開發完全手冊》從最簡單的點亮一個LED開始,由淺入深地講解,使讀者最終可以配置、移植、裁剪內核,編寫驅動程序,移植GUI系統,掌握整個嵌入式Linux系統的開發方法。

1、Linux 基礎
安裝Linux操作系統 Linux文件系統 Linux常用命令 Linux啟動過程詳解。
2、Shell 編程基礎
Shell簡介 認識後台程序Bash編程熟悉Linux系統下的編輯環境。
3、Linux 下的 C 編程基礎
linux C語言環境概述 Gcc使用方法 Gdb調試技術。
4、嵌入式系統開發基礎
嵌入式系統概述 交叉編譯 配置TFTP服務 配置NFS服務 下載Bootloader和內核 嵌入式Linux應用軟體開發。
4、嵌入式系統移植
Linux內核代碼 平台相關代碼分析 ARM平台介紹 平台移植的關鍵技術 移植Linux內核到 ARM平台 了解移植的概念 能夠移植Linux內核移植Linux2.6內核到 ARM9開發板。
5、嵌入式 Linux 下串口通信串列I/O的基本概念 嵌入式Linux應用軟體開發流程 Linux系統的文件和設備。
6、嵌入式系統中多進程程序設計Linux系統進程概述 嵌入式系統的進程特點 進程操作 守護進程 相關的系統調用了解Linux系統中進程的概念。
...
網上很多~可以先從虛擬機玩起。
A.一般安裝一個VMWARE虛擬機,再從網上下載個RedHat9.0的光碟鏡像。
這個比較適合入門linux,當然也有Cygwin的,不過不推薦。
B.然後就可以按照上面的步驟學起來了,等把linux的shell和gcc,gdb,系統編程,gui(QT,miniGUI,MicroWin等等)玩好之後,可以買個開發板了,這里就不說明具體品牌了,2410/2440開發板很多的。
C.然後開始玩開發板,常用的代碼編輯工具有:SourceInsight,UE。
還有代碼比較工具,BeyondCompare。
當然還有ADS1.2,這個是必不可少的,可以先把ARM開發板當單片機開發板玩!先熟悉具體硬體設備的使用,如UART,SPI,LCD控制器等,最後再去玩Bootloader,系統移植,內核,文件系統,應用編程,驅動編程。。。

㈤ 首先arm9嵌入式開發板能不能跑a.out,這個文件是從VM上的LINUX下編譯通過拷到嵌入式板子上的

VM是用的PC的CPU,也就是X86系列的,你的arm板子是ARM晶元的,所以你想要到板子里跑那個程序就得把makefile里的CC=GCC 改成CC=arm-linux-gcc 交叉編譯一下,然後把生成的a.out拷貝到板子里,./a.out運行之

㈥ 求嵌入式linux開發詳細流程(步驟)

1.首先,建立交叉編譯環境:交叉編譯是指:在PC機上編譯,在目標板上執行,我PC是linux+ arm-elf-gcc編譯器.扳子是ARM3000.板子上的系統是uclinux,這時一個剪裁的很小的實時嵌入式linux操作系統.推薦使用這個.
2.然後就是你寫程序嘍,不過注意可能有些庫函數不能用,因為哪個編譯器稍微受限一點,不是所由的c庫函數都支持,不過一般開發的都有.
3.連起你的主機和開發板,這個你會不?要連兩個:串口(用來控制板子)和以太口(用來下載程序),我們板子上這些外設都有,你要使沒有可以用其他的口代替傳程序,但串口可是該有的阿!
4.在你主機上編譯程序生成目標代碼,建議用makefile文件來組織你的聯編關系.
5.把生成代碼下載到目標板執行調試.我是用的主機的NFS(網落文件)服務,下載到目標板的.
6.注:目標板是怎麼控制的呢?是用串口控制的,可用minicom,設置好你要控制的串口,也應該是你連板子的那個.在命令行里敲上minicom,即進入minicom截面,開啟你的板子,應該就是板子uclinux系統解壓安裝的畫面了.然後用ifconfig eth0.....
配置ip,這個ip就是你板子的ip了,注意與主機一個網段.然後mount -t nfs 主機ip:/uclinux /板子上的一個目錄,就把主機的 uclinux目錄放到板子上了(這么說其實不合理,應該叫掛載). 然後找到你剛才一經編譯好的哪個目標代碼執行即可.

因不了解你的具體環境和配置,暫說這些,有問題可再聯系:)

㈦ arm-linux 交叉編譯環境的建立,希望有清楚的人解答,復制的閃人

是這樣子的,計算機linux中原有的gcc是針對通用的X86等處理器而言的,編譯出來的可執行文件是只能在通用計算機上運行的,arm也是一種處理器,只不過其指令等和X86等CPU不同,所以需要有針對arm的編譯器來編譯源程序,才能在arm中運行。
我在arm9下做過linux,qt編程,需要先在PC上安裝linux,然後安裝arm-linux-gcc,同時為了可以使用arm-linux-gcc來編譯程序,需要指定環境變數,這個可以在.profile等文件中進行更改,具體辦法你查一下就知道了。或者使用export命令在終端中設置環境變數。兩種方法的結果有區別哦!
你想用2440的開發板的話就是arm9了,我還沒找到arm9的模擬工具,但是網上已經有arm7的模擬工具。
對於arm-linux-gcc,只要你安裝好並設置好了路徑(環境變數)後,在一個終端中輸入#arm-linux-gcc -v
那麼你一般可以看到你安裝的arm-linux-gcc 版本信息,到此你就可以使用它編譯你的源程序,然後將生成的可執行文件下載到arm開發板中就可以運行了。
還有什麼問題再說吧,我也是一個人摸索出來的,估計摸索了一個月才成功的在arm上運行了第一個自己的qt圖形界面程序,祝你好運!
我的建議:
一、熟悉linux 的各種操作命令(如export)
二、學會怎麼下載可執行文件到arm中
三、學會用pc控制arm上的linux

我只用過arm-linux-gcc,在你的安裝文件夾下可以找到

㈧ 學習嵌入式,推薦個開發板

現在ARM處理器占市場的大半,一般買開發板都買 ARM內核的,現在一般流行ARM9 ,開發板(2410和2440)不同的公司有不同的價錢,不過都差不多2410一般900左右,2440是1100左右。如果很便宜,那可能少了些什麼外圍功能,或者器件是二手之類的、、、

你想偏軟體,那就是往應用方面,我現在也是在做應用,現在流行 ARM + Linux,你首先要對ARM體系結構熟悉,之後你試著移植 u-boot,內核,根文件系統到實驗板上,這些不是很難,技術網上都有,可以參考。既然是做應用那當然少不了QT了,前面都做好了,那就開始學 QT(做界面),但在學 QT 之前已經默認你會用 C/C++,如果你不熟悉這門語言你必須先學會、、、最後,經交叉編譯後下載到板子上、、、、祝你好運!

㈨ 如何學習嵌入式軟體開發

建議你還是參加培訓吧,學習嵌入式的周期3-5個月,門檻較高,自學的話更是需要較強的學習能力和專業功底。相當來說走培訓這條路可以快速熟悉並進入嵌入式這一行業。我現在一同學就去了一個叫東方賽富的參加嵌入式培訓,據說在北京口碑是最好的,建議你查查看看,另附上嵌入式系統學習步驟,希望對你有所幫助。。。。
1、Linux 基礎
安裝Linux操作系統 Linux文件系統 Linux常用命令 Linux啟動過程詳解 熟悉Linux服務能夠獨立安裝Linux操作系統 能夠熟練使用Linux系統的基本命令 認識Linux系統的常用服務安裝Linux操作系統 Linux基本命令實踐 設置Linux環境變數 定製Linux的服務 Shell 編程基礎使用vi編輯文件 使用Emacs編輯文件 使用其他編輯器
2、Shell 編程基礎
Shell簡介 認識後台程序Bash編程熟悉Linux系統下的編輯環境 熟悉Linux下的各種Shell 熟練進行shell編程熟悉vi基本操作 熟悉Emacs的基本操作 比較不同shell的區別 編寫一個測試伺服器是否連通的shell腳本程序 編寫一個查看進程是否存在的shell腳本程序 編寫一個帶有循環語句的shell腳本程序
3、Linux 下的 C 編程基礎
linux C語言環境概述 Gcc使用方法 Gdb調試技術 Autoconf Automake Makefile 代碼優化 熟悉Linux系統下的開發環境 熟悉Gcc編譯器 熟悉Makefile規則編寫Hello,World程序 使用 make命令編譯程序 編寫帶有一個循環的程序 調試一個有問題的程序
4、嵌入式系統開發基礎
嵌入式系統概述 交叉編譯 配置TFTP服務 配置NFS服務 下載Bootloader和內核 嵌入式Linux應用軟體開發流程熟悉嵌入式系統概念以及開發流程 建立嵌入式系統開發環境製作cross_gcc工具鏈 編譯並下載U-boot 編譯並下載Linux內核 編譯並下載Linux應用程序
4、嵌入式系統移植
Linux內核代碼 平台相關代碼分析 ARM平台介紹 平台移植的關鍵技術 移植Linux內核到 ARM平台 了解移植的概念 能夠移植Linux內核移植Linux2.6內核到 ARM9開發板
5、嵌入式 Linux 下串口通信
串列I/O的基本概念 嵌入式Linux應用軟體開發流程 Linux系統的文件和設備 與文件相關的系統調用 配置超級終端和MiniCOM 能夠熟悉進行串口通信 熟悉文件I/O 編寫串口通信程序 編寫多串口通信程序
6、嵌入式系統中多進程程序設計
Linux系統進程概述 嵌入式系統的進程特點 進程操作 守護進程 相關的系統調用了解Linux系統中進程的概念 能夠編寫多進程程序編寫多進程程序 編寫一個守護進程程序 sleep系統調用任務管理、同步與通信 Linux任務概述任務調度 管道 信號 共享內存 任務管理 API 了解Linux系統任務管理機制 熟悉進程間通信的幾種方式 熟悉嵌入式Linux中的任務間同步與通信編寫一個簡單的管道程序實現文件傳輸 編寫一個使用共享內存的程序
7、嵌入式系統中多線程程序設計
線程的基礎知識 多線程編程方法 線程應用中的同步問題了解線程的概念 能夠編寫簡單的多線程程序編寫一個多線程程序
8、嵌入式 Linux 網路編程
網路基礎知識 嵌入式Linux中TCP/IP網路結構 socket 編程 常用 API函數 分析Ping命令的實現 基本UDP套介面編程 許可證管理 PPP協議 GPRS 了解嵌入式Linux網路體系結構 能夠進行嵌入式Linux環境下的socket 編程 熟悉UDP協議、PPP協議 熟悉GPRS 使用socket 編寫代理伺服器 使用socket 編寫路由器 編寫許可證伺服器 指出TCP和UDP的優缺點 編寫一個web伺服器 編寫一個運行在 ARM平台的網路播放器
9、GUI 程序開發
GUI基礎 嵌入式系統GUI類型 編譯QT 進行QT開發熟悉嵌入式系統常用的GUI 能夠進行QT編程使用QT編寫「Hello,World」程序 調試一個加入信號/槽的實例 通過重載QWidget 類方法處理事件
10、Linux 字元設備驅動程序
設備驅動程序基礎知識 Linux系統的模塊 字元設備驅動分析 fs_operation結構 載入驅動程序了解設備驅動程序的概念 了解Linux字元設備驅動程序結構 能夠編寫字元設備驅動程序編寫Skull驅動 編寫鍵盤驅動 編寫I/O驅動 分析一個看門狗驅動程序 對比Linux2.6內核與2.4內核中字元設備驅動的不同Linux 塊設備驅動程序塊設備驅動程序工作原理 典型的塊設備驅動程序分析 塊設備的讀寫請求隊列了解Linux塊設備驅動程序結構 能夠編寫簡單的塊設備驅動程序比較字元設備與塊設備的異同 編寫MMC卡驅動程序 分析一個文件系統 對比Linux2.6內核與2.4內核中塊設備驅動的不同
11、文件系統
虛擬文件系統 文件系統的建立 ramfs內存文件系統 proc文件系統 devfs 文件系統 MTD技術簡介 MTD塊設備初始化 MTD塊設備的讀寫操作了解Linux系統的文件系統 了解嵌入式Linux的文件系統 了解MTD技術 能夠編寫簡單的文件系統為 ARM9開發板添加 MTD支持 移植JFFS2文件系統 通過proc文件系統修改操作系統參數 分析romfs 文件系統源代碼 創建一個cramfs 文件系統 .

㈩ 初學者想學ARM嵌入式,應該選ARM9還是ARM11開發板

對於ARM嵌入式的初學者,建議用ARM9開發板。
首先,從功能上來說,ARM11要比ARM9強一些,但是性能優異並不代表適合初學者。對於初學者來說ARM11的有些功能是冗餘。
其次,學習ARM9或者ARM11就在所難免學習其所支持的操作系統Linux(ARM11可以支持Android)。目前,市面上ARM9的開發版的價格要比ARM11低很多,而兩者都可以運行Linux操作系統。並且ARM9開發板的資料和教學視頻也更多一些。jz2440+韋東山系列教學視頻,mini2440+國嵌視頻都是不錯的選擇。
最後,學習ARM9,可以按Linux應用開發、驅動開發順序學習。如果想學習Android系統開發,可以學完ARM9再學習ARM11開發板下的安卓系統開發。因為安卓系統就是Linux內核+libc庫用Java封裝而成。

閱讀全文

與arm9交叉編譯開發嵌入式板子相關的資料

熱點內容
裝機自帶軟體找不到軟體文件夾 瀏覽:330
仙境之路伺服器地址ip 瀏覽:707
華為服務app是什麼東西 瀏覽:180
關於單片機的視頻 瀏覽:591
淘寶直播app緩存怎麼清理 瀏覽:555
android可以刷機嗎 瀏覽:350
各城市8月程序員薪資 瀏覽:405
ins導航python 瀏覽:247
51單片機1us 瀏覽:218
上海突發天氣預警推送什麼app 瀏覽:740
壓縮機的供油 瀏覽:971
django開發的網站源碼 瀏覽:511
資料庫管理項目源碼 瀏覽:122
最新駱駝源碼app下載 瀏覽:50
網路答題用什麼app模板 瀏覽:550
linux伺服器如何配置多域名 瀏覽:250
pythonlibrary中文 瀏覽:551
客戶管理系統破解源碼 瀏覽:995
程序員皮皮 瀏覽:411
一個單片機一個程序 瀏覽:101