1. 程式人生 > >Marvell MW300 編譯環境詳解

Marvell MW300 編譯環境詳解

Marvell MW300編譯環境詳解


  最近手頭上準備拿Marvell MW300晶片開發,但是由於Marvell 官方提供的資料有限,針對編譯環境很是無奈。在網上查了很多資料,發現關於Marvell的資料少之又少,並且也發現Marvell都沒有技術論壇,瞬間無語!

以下是對Marvell MW300  在Ubuntu Linux 和Windows 7編譯環境搭建的詳解。


1.Windows 7 編譯環境詳解。

a.官方SDK原始碼。

b.Windows 下 安裝ARM GCC 編譯工具。下載地址:https://launchpad.net/gcc-arm-embedded

。安裝自己適用的編譯工具後,記得配置系統環境變數,環境變數配置可參考http://jingyan.baidu.com/article/d5a880eb6aca7213f047cc6c.html

c.安裝Cygwin。網上搜索下載。使用Cygwin安裝:

make

如圖:


binutils

gcc

openssl-devel

patch

d.安裝Python。下載地址:https://www.python.org/downloads/

e.安裝WinUSB Driver。 


注意:MW300燒錄工具可以使用串列埠、或者Jlink、或者MLink(Marvell自己的)。這個WinUSB Driver驅動是虛擬的將Jlink 或者RS232串列埠轉成USB口。

f.安裝IAR或者Eclipse。我搭建了一下IAR的環境,Eclipse沒有試,應該也是可以的。

安裝IAR好之後,需要在SDK中找到IAR環境檔案來替換自己安裝的IAR環境檔案。

這時候Windows編譯環境搭建完成了,試著開啟工程編譯一下吧。

1.開啟工程,編譯:


2.設定驅動。使用Zdig,將Jlink驅動轉換成winUSB。


3.燒錄各個分割槽檔案。執行成功!

注意:

如果提示,燒錄失敗。可能存在以下問題:

a.Jlink驅動沒有安裝好,或者驅動未虛擬替換。

b.硬體上面外掛Flash不是程式碼庫中的Flash硬體,Flash不識別造成燒錄失敗。

c.Jlink上電異常。

確切問題,看出錯log。常常會碰到b問題。如果出現這個問題,需要將自己的外觀Flash新增到code中,重新“編譯Code”。問題解決!


2.Ubuntu編譯環境詳解。

我的Ubuntu版本是Ubuntu 14.04。

相對Windows 編譯環境,Linux環境環境更加簡單,並且大部分人都喜歡在Linux下開發。

a.安裝ARM-GCC編譯工具鏈。地址同上(不同版本的SDK對ARM-GCC編譯工具鏈版本要求,具體看SDK要求)。配置Linux環境變數,可以在.profile或者在.bashrc中配置。詳細環境變數配置略!

b.安裝OpenOcd。OpenOcd相關資料請查閱資料。主要是用來燒錄程式碼使用!

c.安裝Python.

此時,先編譯程式碼,看是否能編譯通過,如果提示缺少庫檔案什麼的,按照提示安裝。我好想沒遇到問題。

d.燒錄程式碼。(我使用的是Jlink)

注意,這個命令很關鍵:

先燒錄分割槽檔案:

sudo $PWD/sdk/tools/OpenOCD/flashprog.py -i jlink -l $PWD/sdk/tools/OpenOCD/mw300/layout.txt -r

同理燒錄各個分割槽檔案。

燒錄完成,reset即可執行啦。

注意:

同樣,如果提示,燒錄失敗。可能存在以下問題:

a.Jlink驅動沒有安裝好,或者驅動未虛擬替換。

b.硬體上面外掛Flash不是程式碼庫中的Flash硬體,Flash不識別造成燒錄失敗。

c.Jlink上電異常。

確切問題,看出錯log。常常會碰到b問題。如果出現這個問題,需要將自己的外觀Flash新增到code中,重新“編譯Code”。問題解決!

以上編譯環境搭建就完成了。