//Logo Image
作者:巫佳哲(2009-09-10);推薦:徐業良(2009-09-10)

ARM_Linux開發平台架設與程式編譯器安裝

本文件介紹在個人電腦上如何架設ARM開發平台與安裝程式編譯器。在ARM開發板的選擇上選用凱斯電子科技公司(http://www.kaise.com.tw/)生產的KS_2410開發板其處理器使用ARM920T核心的Samsung S3C2410XKS_2410目前採用ARM_Linux作業系統,是一種精簡版的Linux,常用於嵌入式系統。為了使應用程式可以在ARM_Linux作業系統上執行,必須在一個相容於Linux作業系統的開發平台上使用編譯器來編譯應用程式。架設開發平台流程包含安裝Linux作業系統、安裝RS232通訊軟體和安裝程式編譯器三部分。接下來介紹每部分的相關細節。

1.         安裝Linux作業系統

Linux作業系統有許多不同的版本,如CentOSUbuntuFedora等,但每一種版本都是架構在Linux Kernel底下,不論安裝哪一版本,其基本架構是相同的,只是套件不同而已。本文應用只需使用到NSF ServerFTP Server兩種,所以安裝桌面圖示版即可,不需要安裝伺服器版本。

本文中使用的是CentOS 5.3版本作為開發平台的作業系統,本文不介紹其安裝流程,若需要相關的安裝細節,請參考表1各版本的相關網站。安裝時若不知道要選擇哪些套件,則建議全部安裝,避免功能不完全。

1. Linux版本與相關網站

Linux版本

相關網站

Ubuntu

http://www.ubuntu-tw.org/

CentOS

https://www.centos.org/

Fedora

http://fedoraproject.org/

2.         安裝RS-232通訊軟體埠套件

KS_2410開發板上,目前預設一組RS-232通訊埠與電腦通訊,所以在開發平台上必須要有一套RS-232通訊軟體與KS_2410溝通。本文選用“minicom”套件來當作通訊軟體。

(1)       “minicom”套件安裝

A.         開啟【應用程式→新增/移除軟體】;

B.         點選搜尋分頁;

C.         在搜尋欄位中鍵入“minicom”並按下『搜尋』;

D.         系統會自動去讀取網路套件清單,並尋找最新版本的套件。

E.          勾選“minicom”套件並按下『套用』後開始安裝,如圖1

1. 套件管理員畫面

(2)       連接測試

安裝完“minicom”後第一次執行時,必須先進行初始設定,設定步驟如下(本文的指令範例中,□符號代表空白鍵):

A.         開啟終端機,輸入指令“dmesg|greptty”,查詢RS232連接埠代號,如圖2表示,有兩組連接埠代號ttyS0ttyS1,本文使用第一組連接埠ttyS0

B.         輸入指令“minicom-s”,進入設定選單,如圖3

C.         選擇『Serial port setup』設定;

D.         輸入設定資訊如圖4,其中Serial Device輸入RS232連接埠代號,確認後返回設定選單;

E.          選擇『Save setup as..』進行存檔,再選擇『Exit』離開設定選單;

F.          將開發板接上電腦,並開啟電源,畫面若顯示如圖5的開機畫面,代表設定正確,之後只要輸入“minicom”指令即可。

2. Serial port setup畫面

3. 設定選單

4. Serial port setup畫面

5. 開機資訊畫面

3.         安裝程式編譯器套件

要使編譯後的執行檔可以在ARM_Linux作業系統上執行,必須使用相容的編譯器來進行編輯,本文使用GCC(GNU Compiler Collection, http://gcc.gnu.org/)編譯器,目前GCC的版本有許多種,本文選用arm-linux 2.95.3arm-linux 3.4.1兩種,下面介紹如何安裝編譯器並測試。

(1)       安裝流程

A.         先將ks_2410光碟中的2.95.3.tgz3.4.1.tar.bz2兩個檔案複製到電腦的根目錄</>下,可以利用“cp”指令完成動作,指令範例如下,其中cdrom為光碟名稱;

“cp/media/cdrom/Linux/2.95.3.tgz3.4.1.tar.bz2/”

“cp/media/cdrom/Linux/3.4.1.tar.bz2/”

B.         在根目錄</>下將兩個檔案解壓縮,可以利用“tar”指令完成動作,指令範例如下;

“tar-zxvf2.95.3.tgz”

“tar-zxvf3.4.1.tar.bz2”

C.         查看</usr/local/arm>目錄下,是否有2.95.33.4.1兩個檔案(如圖6),可以利用“ls”指令查看,指令範例如下。若是沒有請檢察指令是否有輸入錯誤。

“ls/usr/local/arm”

6. </usr/local/arm>目錄

(2)       編譯測試

安裝完成後,為了確定編譯器能夠正常運作,可以透過編譯程式來測試。下面利用編譯一支簡單的hello.c來進行編譯測試。

A.     首先撰寫一支簡單的程式並存成hello.c檔,程式碼如圖7

7. hello.c程式碼

B.     輸入指令“/usr/local/arm/2.95.3/bin/arm-linux-gcchello.c-ohello”來編譯程式,若是編譯正確,不會有訊息出現,並且在目錄下會多出一個檔名為hello的執行檔,如圖8

8. 程式編譯過程

C.     最後將編譯完成的執行檔複製到開發板上執行,其複製的方式有很多種,本文介紹利用記憶卡的複製流程,流程如下:

a.       先將電腦中的hello執行檔複製到記憶卡上;

b.      將記憶卡插入開發板,並透過“minicom”套件連結電腦與開發板;

c.       輸入指令“mount/dev/mmc/part1/mnt”將記憶卡掛載至</mnt>目錄下,掛載成功後會出現如圖9訊息;

d.      輸入指令“./mnt/hello”執行hello執行檔,圖9為執行結果,若結果與圖相同,代表程式能夠正常在開發板上執行,否則請重新執行上述步驟。

9. 記憶卡掛載成功訊息

10. hello執行結果