Mac OSXでARM開発環境 (1)
ちょっとAVRじゃきつい案件2コきてるので
以前からARMも気になっていたのでまずは開発環境の構築にとりかかってます。
まったく初めてなので、まずは確実に動くように(半)完成品で揃えてみました。
まずはARMボードの STBee
これめっちゃ安い!恐ろしく丁寧なドキュメント(win)もあるのでまずはこれを使ってみました。
JTAGには Olimex ARM-USB-OCD
FT232で自作もできるとのことですが、まずは完成品で確実に稼働できてからですね。
またFT232系だとMacでもドライバまわりが安心かなーということで。
またUSB経由で書込をおこなうDFUなどは使わず、最初からJTAGで書込しようと思ってます。
まずは
GCCのツールチェイン devkitARM
こちらの「SnowLeopardにSTM32(Cortex-M3)の開発環境を構築」を参考にして
devkitARMをおなじく /usr/local/ 以下へインストール(コピー)
こちらの SnowLeopardにSTM32(Cortex-M3)の開発環境を構築 を参考にさせていただきました。
解凍してできた devkitARM フォルダは
/usr/local/フォルダ内へ入れておきます。
パスは /usr/local/devkitARM へ通しておきます。
IDEは
Eclipse CDT
とりあえず32bit版をダウンロード
プラグイン関係は
日本語プラグイン
http://sourceforge.jp/projects/blancofw/wiki/nlpack.eclipse
こちらからNLpackja-eclipse-SDK-3.6M4-blancofw20091223.zipをダウンロード
eclipse/dropins/ 以下にnlpackフォルダを作り、その中に解凍されたeclipseフォルダを入れときました。
Zylin Embedded CDT
http://opensource.zylin.com/zylincdt
DSDPの
Target Managemant Terminal
作業対象からHeliosを選び
Mobile and Device Developmentにある Target Management Terminalをインストール
rxtx
作業対象に http://rxtx.qbang.org/eclipse/ を追加
最新版入れてもコネクションエラーとなってしまう。(現在も使えず 原因不明)
Hex Editor Plugin for Eclipse 2.3.x and 3.3.x
http://ehep.sourceforge.net/update
このへんは
ARM development on Macintosh (Japanese)
や
マイコン徹底入門 導入編
を参考にさせていただきました。
次はJTAG関係
Olimex ARM-USB-OCD
FTDIのサイトから VCPドライバ(現時点でver2.2.14)をダウンロード&インストール
これほぼデファクトなFTDIチップのドライバなので、Macでシリアルポート使ってたり、
Arduino使ってる場合はそもそもインストール済みのことがおおいです。
とりあえず最新版をインストールで。
ただ、こちらの openocd FTDI注意点
ARM development on Macintosh (Japanese)
にもあるように
JTAGのFT232はFTDI標準のドライバではなくlibftdiを使うので、FTDIドライバに先取りされない処置を施さないといけないようです。
こちらも参考にして
STM32 and the Olimex ARM-USB-OCD on a Mac
デスクトップなどへコピーして該当を削除、もとへ上書きすると、アクセス権のオーナーが自分になってしまうため
sudo vim /System/Library/Extensions/FTDIUSBSerialDriver.kext/Contents/Info.plist
などとして、直接書き換えたほうがいいです。
失敗するとロードできない旨のダイアログがでるので、ドライバを再インストールするといいと思います。
ターミナルで ls /dev すると
cu.usbserial-00004006B
みたいなに尻にBのだけがでてると思います。 (A側のは無効になってる)
次に
libftdi
http://www.intra2net.com/en/developer/libftdi/download.php
こちらより libftdi-0.18.tar.gz をダウンロード
cd /ibftdi-0.18/
./configure
make
sudo make install
デフォルトのインストール先は /usr/local/libです
つぎに
libusb
http://sourceforge.net/projects/libusb/files/libusb-1.0/
こちらより libusb-1.0.8.tar.bz2 (現時点の最新)をダウンロードし
cd libusb-1.0.8
./configure
make
sudo make install
libusb-compat
http://sourceforge.net/projects/libusb/files/libusb-compat-0.1/
libusb-compat-0.1.3.tar.bz2
cd libusb-compat-0.1.3
./configure LIBUSB_1_0_CFLAGS=-I/usr/local/include/libusb-1.0 LIBUSB_1_0_LIBS=”-L/usr/local/lib -lusb-1.0″ –prefix=/usr/local
make
sudo make install
ですが
/usr/local/include/libusb-1.0/libusb.hがコピーされずエラーになってしまいました。。
よくわからんので
cd /usr/local/include
sudo cp libusb-1.0/libusb.h libusb.h
とlibusb.hを一階層上にコピーしておきます。
次に
OpenOCD
これはリポジトリから最新版を落とします。
オモテでは0.4ですがgitから落とすと0.5でした。
http://sourceforge.net/projects/openocd/develop
にある
git clone git://openocd.git.sourceforge.net/gitroot/openocd/openocd
でおとしてください。
cd openocd
./bootstrap
./configure –enable-maintainer-mode –prefix=/usr/local –enable-ft2232_libftdi
make
sudo make install
これでエラー無しだとOK
は〜〜〜。。
openocdはMacPortsからインストールしたもの(0.4)はどうやっても動きませんでした、
なのでリポジトリから落とした最新版でかつlibftdiを使う形でやっとこ動作。
openocdをビルドする際もlibusb,libftdiのライブラリや、ヘッダなどが必要なので
どうせならこれも最新のをビルドし直してやってみました。
つづく




Write a Comment