SUZAKU-VでTOPPERS/ASPを動かす#1
の編集
http://masayuki.style.coocan.jp/hp/robowiki/?SUZAKU-V%E3%81%A7TOPPERS/ASP%E3%82%92%E5%8B%95%E3%81%8B%E3%81%99%EF%BC%83%EF%BC%91
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
0N0-ONE
0N0-ONE GP 2006
0N0-ONE GP 2007
0N0-ONE GP 2008
Alibre Design パーツライブラリ
Alibre Design メモ
AutoTicketLinkName
BoROID-01 Ver2.00開発室
BracketName
ConvNetJSをC#に移植してみる
FormattingRules
FrontPage
Help
InterWiki
InterWikiName
InterWikiSandBox
InterWikiテクニカル
MenuBar
PHP
PukiWiki
PukiWiki/1.4
PukiWiki/1.4/Manual
PukiWiki/1.4/Manual/Plugin
PukiWiki/1.4/Manual/Plugin/A-D
PukiWiki/1.4/Manual/Plugin/E-G
PukiWiki/1.4/Manual/Plugin/H-K
PukiWiki/1.4/Manual/Plugin/L-N
PukiWiki/1.4/Manual/Plugin/O-R
PukiWiki/1.4/Manual/Plugin/S-U
PukiWiki/1.4/Manual/Plugin/V-Z
Roppoのサンプルモーションを使ってみる
ROS-Indigoインストールメモ
SandBox
SUZAKU-VでTOPPERS/ASPを動かす#1
SUZAKU-VでTOPPERS/ASPを動かす#2
TOPPERS/JSPを使う
WikiEngines
WikiName
WikiWikiWeb
YukiWiki
あの楽器を作ってみる
ふうせんプロジェクターを作ってみる
カリンロボ開発室
クラウド型空間マップデータベース
サーボモータを作ってみる
サーボモータを作ってみる2
チロルチョコロボット大会2掲示板
チロルチョコロボット大会3掲示板
チロルチョコロボット大会4掲示板
チロルチョコロボット大会報告板
チロルチョコロボット大会掲示板
チロルチョコロボット大会10掲示板
チロルチョコロボット大会11掲示板
チロルチョコロボット大会12掲示板
チロルチョコロボット大会13掲示板
チロルチョコロボット大会14掲示板
チロルチョコロボット大会15掲示板
チロルチョコロボット大会16掲示板
チロルチョコロボット大会17掲示板
チロルチョコロボット大会18掲示板
チロルチョコロボット大会5掲示板
チロルチョコロボット大会6 in ホビーロボットコロッセオ
チロルチョコロボット大会7掲示板
チロルチョコロボット大会8掲示板
チロルチョコロボット大会9掲示板
チロロッポの作り方
ヘルプ
モーションシンセサイザー
モーションプロセッサ用PCコントローラ
ロボットハンドを作ってみる
作品の写真
全方位3Dカメラを作ってみる
整形ルール
日本語
最適化したアホ毛を作ってみる
身体モデル自動生成
連想型ファイルシステム
* SUZAKU-VでTOPPERS/ASPを動かす#1 [#q6ffc018] 今回使用したSUZAKU-Vは、SZ410-U00です。また動作確認用に、LED/SWボードを使用します。~ TOPPERS/ASPはSUZAKU-S上のMicroBlaze向けにはリリースされていますが、SUZAKU-V向けにはリリースされていません。~ 今回 Xilinx Virtex-4 FX 内蔵の PowerPC405コアへの移植を試みます。 #contents ---- **TOPPERS/ASPとは [#h28476c7] - TOPPERS/ASPの情報は[[TOPPERSプロジェクト:http://www.toppers.jp/]]を見てください。 **開発環境の準備 [#bdf03a21] + Cygwinのインストール~ [[ここ:http://sourceware.org/cygwin/]]から「Install or update now!(using setup.exe)」をクリックしてセットアップを行います。~ ~ 今回はSelect Packagesで以下のパッケージをインストールしました。 All Archive unzip 5.52-3 Devel autoconf 6-1 automake 4-1 binutils 20080624-2 flex 2.5.35-1 gcc 3.4.4-999 make 3.81-2 ruby 1.8.7-p72-2 Perl perl 5.10.0-5 Utils cpio 2.9-1 file 4.21-1 patch 2.5.8-9 time 1.7-2 ~ +PowerPC用ビルド環境の構築~ 次の手順で行いました。~ ~ ++ディレクトリの準備~ 次のディレクトリを作成し、カレントディレクトリに変更します。 $ mkdir /suzakuv ++binutilsのダウンロード~ [[ここ:http://ftp.gnu.org/gnu/binutils/]]からダウンロードします。~ 今回はbinutils-2.19.1.tar.gzをダウンロードし、/suzakuvに格納しました。~ ~ ++binutilsのビルド~ PowerPC用にビルドとインストールを行います。 $ cd /suzakuv $ tar xvfz binutils-2.19.1.tar.gz $ cd binutils-2.19.1 $ mkdir build $ cd build $ ../configure --target=powerpc-suzakuv-elf --prefix=/suzakuv/binutils $ make CFLAGS="-O2" $ make install シンボリックリンクを作成しておきます。 $ mkdir /suzakuv/bin $ cd /suzakuv/bin $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-addr2line.exe addr2line $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-objcopy.exe objcopy $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-ar.exe ar $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-objdump.exe objdump $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-as.exe as $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-ranlib.exe ranlib $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-c++filt.exe c++filt $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-readelf.exe readelf $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-embedspu embedspu $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-size.exe size $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-gprof.exe gprof $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-strings.exe strings $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-ld.exe ld $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-strip.exe strip $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-nm.exe nm ++gccと依存ファイルのダウンロード~ gccは[[ここ:http://mirror.anl.gov/pub/gnu/gcc/]]からダウンロードします。~ 今回はgcc-4.4.0/gcc-4.4.0.tar.gzをダウンロードし、/suzakuvに格納しました。~ 依存ファイルとして、[[ここ:ftp://gcc.gnu.org/pub/gcc/infrastructure/]]から gmp-4.2.4.tar.bz2 および mpfr-2.4.1.tar.bz2 をダウンロードし、/suzakuvに格納しました。~ さらに[[ここ:ftp://sources.redhat.com/pub/newlib/index.html]]から newlib-1.17.0.tar.gz をダウンロードし、これも/suzakuvに格納しました。~ ~ ++gmpのビルド~ ビルドとインストールを行います。 $ cd /suzakuv $ tar jxf gmp-4.2.4.tar.bz2 $ cd gmp-4.2.4 $ mkdir build $ cd build $ ../configure --prefix=/suzakuv/gmp $ make CFLAGS="-O2" $ make check $ make install ++mpfrのビルド~ ビルドとインストールを行います。 $ cd /suzakuv $ tar jxf mpfr-2.4.1.tar.bz2 $ cd mpfr-2.4.1 $ mkdir build $ cd build $ ../configure --with-gmp=/suzakuv/gmp --prefix=/suzakuv/mpfr $ make CFLAGS="-O2" $ make check $ make install ++gccとnewlibのビルド~ PowerPC用にビルドとインストールを行います。 $ PATH=/suzakuv/binutils/bin:$PATH $ export PATH $ cd /suzakuv $ tar xvfz newlib-1.17.0.tar.gz $ tar xvfz gcc-4.4.0.tar.gz $ cd gcc-4.4.0 $ ln -s ../newlib-1.17.0/newlib $ ln -s ../newlib-1.17.0/libgloss $ mkdir build $ cd build $ ../configure --target=powerpc-suzakuv-elf --enable-languages=c --prefix=/suzakuv/gcc --with-gmp=/suzakuv/gmp --with-mpfr=/suzakuv/mpfr --disable-libssp --disable-libgcc --disable-ada --with-newlib --with-headers=/suzakuv/newlib-1.17.0/newlib/libc/include/ $ make CFLAGS="-O2" $ make install ビルド結果を確認。~ $ cd /suzakuv/gcc/bin $ ./powerpc-suzakuv-elf-gcc -v Using built-in specs. Target: powerpc-suzakuv-elf Configured with: ../configure --target=powerpc-suzakuv-elf --enable-languages=c --prefix=/suzakuv/gcc --with-gmp=/suzakuv/gmp --with-mpfr=/suzakuv/mpfr --disable-libssp --disable-libgcc --disable-ada --with-newlib --with-headers=/suzakuv/newlib-1.17.0/newlib/libc/include/ Thread model: single gcc version 4.4.0 (GCC) シンボリックリンクを作成しておきます。 $ cd /suzakuv/bin $ ln -s /suzakuv/gcc/bin/powerpc-suzakuv-elf-cpp.exe cpp $ ln -s /suzakuv/gcc/bin/powerpc-suzakuv-elf-gccbug gccbug $ ln -s /suzakuv/gcc/bin/powerpc-suzakuv-elf-gcc-4.4.0.exe gcc-4.4.0 $ ln -s /suzakuv/gcc/bin/powerpc-suzakuv-elf-gcov.exe gcov $ ln -s /suzakuv/gcc/bin/powerpc-suzakuv-elf-gcc.exe gcc ~ +racc環境の構築~ TOPPERS/ASPは、TECS版を使用する予定です。~ TECSの環境変更でraccを使用しますので、ここで構築しておきます。~ 次の手順で行いました。~ ~ ++ディレクトリの準備~ 今回は先ほど作成した /suzakuv を使用します。~ ~ ++raccのダウンロード~ SubVersionリポジトリ http://i.loveruby.net/svn/public/racc/trunk からダウンロードします。~ 今回はWindows上のTortoiseSVNでエクスポートし、/suzakuv/racc-1.4.5 に格納しました。~ ~ ++raccのインストール~ raccのインストールを行います。 $ cd /suzakuv/racc-1.4.5 $ ruby setup.rb **動作確認 [#w9661ca6] 簡単なプログラムを作成して、SUZAKU-V上で動かしてみます。~ ビルドしてSUZAKU-V上のLinux領域に上書きします。~ ~ ++サンプルプログラムについて~ このサンプルプログラムは、SUZAKU-V本体のLED赤を3回点滅・消灯してリブートするものです。~ SUZAKU-VのFPGAコンフィグレーションはデフォルトである必要があります。~ ~ ++ディレクトリ作成~ 次のようにします。 $ cd /suzakuv $ mkdir sample $ cd sample ++ファイル作成~ 次の2つのファイルを作成します。~ ~ 【sample.c】 #define LED_RED (0xF0FFA200) #define LED_ON (0x00000000) #define LED_OFF (0x00000001) #define SOFT_RESET (0xF0FFA000) #define REBOOT (0x00000001) /* binファイルが小さすぎてHermit-At Win32が落ちる対策 */ int a[] = {0,1,2,3}; void main(void) { int *led_red = (int*)LED_RED; int *soft_reset = (int*)SOFT_RESET; int i,j; *led_red = LED_OFF; for(i=0;i<3;i++) { for(j=0;j<100000;j++) { } *led_red = LED_ON; for(j=0;j<100000;j++) { } *led_red = LED_OFF; } *soft_reset = REBOOT; } 【Makefile】 ROOTDIR = /suzakuv PATH := $(ROOTDIR)/bin:$(PATH) CC = gcc AS = as LD = ld OBJCOPY = objcopy CFLAGS = -Wa,-m405 LDLIBS = $(ROOTDIR)/gcc/powerpc-suzakuv-elf/lib/libc.a LDFLAGS = -e main -Ttext 0x00000000 TARGET = sample BIN = $(TARGET).bin ELF = $(TARGET).elf OBJS = $(TARGET).o all: $(BIN) $(BIN): $(ELF) $(OBJCOPY) -O binary $(ELF) $(BIN) $(ELF): $(OBJS) $(LD) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS) %.o: %.c $(CC) -c $(CFLAGS) -o $@ $< clean: -rm -f *.bin *.elf *.o *.map ++プログラムのビルド~ 続いてmakeを実行します。 $ make gcc -c -Wa,-m405 -o sample.o sample.c ld -e main -Ttext 0x00000000 -o sample.elf sample.o /suzakuv/gcc/powerpc-suzakuv-elf/lib/libc.a objcopy -O binary sample.elf sample.bin ++プログラムの書き込み~ PCでターミナルソフトを起動します。ターミナルソフトの設定は次の通り。 ポート : 任意 ボーレート: 115200 データ : 8bit パリティ : なし ストップ : 1bit フロー制御: なし SUZAKU-VのJP1のみショートさせて電源に接続すると、次のメッセージが表示されます。 BBoot v2.6 (powerpc) Press 'z' or 'Z' for BBoot Menu. Hermit-At v1.1.21 (suzaku/powerpc) compiled at 18:40:14, Mar 25 2009 hermit> Harmitが起動すると、SUZAKU-VのLED赤が点灯します。~ 続いて、SUZAKU-V付属のHermit-At Win32で先ほどのsample.binを書き込みます。~ そのため一旦ターミナルを切断して、Hermit-Atの設定を次のように行います。~ Serial Port: 任意 機能 : Download Image : 上記のsample.binを選択 Region : Image ForceLocked: チェックしない この状態で実行をクリックすると、linuxの場所にsample.binが上書きされます。~ ~ ++プログラムの実行~ Hermit-At Win32を終了、再びターミナルを接続してSUZAKU-Vの電源を入れ直します。~ hermitのコマンド入力待ちになるので、bootと入力します。~ うまくいけば、SUZAKU-VのLED赤が消灯し、リブートします。~ ~ 【実行例】 BBoot v2.6 (powerpc) Press 'z' or 'Z' for BBoot Menu. Hermit-At v1.1.21 (suzaku/powerpc) compiled at 18:40:14, Mar 25 2009 hermit> boot Copying kernel............................done. (ここでLED赤が点滅・消灯、リブートします) BBoot v2.6 (powerpc) Press 'z' or 'Z' for BBoot Menu. Hermit-At v1.1.21 (suzaku/powerpc) compiled at 18:40:14, Mar 25 2009 hermit> ~ ([[SUZAKU-VでTOPPERS/ASPを動かす#2]]に続きます) ~ ---- #comment Total:&counter(total); Today:&counter(today); Yesterday:&counter(yesterday);
パスワード:
タイムスタンプを変更しない
* SUZAKU-VでTOPPERS/ASPを動かす#1 [#q6ffc018] 今回使用したSUZAKU-Vは、SZ410-U00です。また動作確認用に、LED/SWボードを使用します。~ TOPPERS/ASPはSUZAKU-S上のMicroBlaze向けにはリリースされていますが、SUZAKU-V向けにはリリースされていません。~ 今回 Xilinx Virtex-4 FX 内蔵の PowerPC405コアへの移植を試みます。 #contents ---- **TOPPERS/ASPとは [#h28476c7] - TOPPERS/ASPの情報は[[TOPPERSプロジェクト:http://www.toppers.jp/]]を見てください。 **開発環境の準備 [#bdf03a21] + Cygwinのインストール~ [[ここ:http://sourceware.org/cygwin/]]から「Install or update now!(using setup.exe)」をクリックしてセットアップを行います。~ ~ 今回はSelect Packagesで以下のパッケージをインストールしました。 All Archive unzip 5.52-3 Devel autoconf 6-1 automake 4-1 binutils 20080624-2 flex 2.5.35-1 gcc 3.4.4-999 make 3.81-2 ruby 1.8.7-p72-2 Perl perl 5.10.0-5 Utils cpio 2.9-1 file 4.21-1 patch 2.5.8-9 time 1.7-2 ~ +PowerPC用ビルド環境の構築~ 次の手順で行いました。~ ~ ++ディレクトリの準備~ 次のディレクトリを作成し、カレントディレクトリに変更します。 $ mkdir /suzakuv ++binutilsのダウンロード~ [[ここ:http://ftp.gnu.org/gnu/binutils/]]からダウンロードします。~ 今回はbinutils-2.19.1.tar.gzをダウンロードし、/suzakuvに格納しました。~ ~ ++binutilsのビルド~ PowerPC用にビルドとインストールを行います。 $ cd /suzakuv $ tar xvfz binutils-2.19.1.tar.gz $ cd binutils-2.19.1 $ mkdir build $ cd build $ ../configure --target=powerpc-suzakuv-elf --prefix=/suzakuv/binutils $ make CFLAGS="-O2" $ make install シンボリックリンクを作成しておきます。 $ mkdir /suzakuv/bin $ cd /suzakuv/bin $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-addr2line.exe addr2line $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-objcopy.exe objcopy $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-ar.exe ar $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-objdump.exe objdump $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-as.exe as $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-ranlib.exe ranlib $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-c++filt.exe c++filt $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-readelf.exe readelf $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-embedspu embedspu $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-size.exe size $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-gprof.exe gprof $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-strings.exe strings $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-ld.exe ld $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-strip.exe strip $ ln -s /suzakuv/binutils/bin/powerpc-suzakuv-elf-nm.exe nm ++gccと依存ファイルのダウンロード~ gccは[[ここ:http://mirror.anl.gov/pub/gnu/gcc/]]からダウンロードします。~ 今回はgcc-4.4.0/gcc-4.4.0.tar.gzをダウンロードし、/suzakuvに格納しました。~ 依存ファイルとして、[[ここ:ftp://gcc.gnu.org/pub/gcc/infrastructure/]]から gmp-4.2.4.tar.bz2 および mpfr-2.4.1.tar.bz2 をダウンロードし、/suzakuvに格納しました。~ さらに[[ここ:ftp://sources.redhat.com/pub/newlib/index.html]]から newlib-1.17.0.tar.gz をダウンロードし、これも/suzakuvに格納しました。~ ~ ++gmpのビルド~ ビルドとインストールを行います。 $ cd /suzakuv $ tar jxf gmp-4.2.4.tar.bz2 $ cd gmp-4.2.4 $ mkdir build $ cd build $ ../configure --prefix=/suzakuv/gmp $ make CFLAGS="-O2" $ make check $ make install ++mpfrのビルド~ ビルドとインストールを行います。 $ cd /suzakuv $ tar jxf mpfr-2.4.1.tar.bz2 $ cd mpfr-2.4.1 $ mkdir build $ cd build $ ../configure --with-gmp=/suzakuv/gmp --prefix=/suzakuv/mpfr $ make CFLAGS="-O2" $ make check $ make install ++gccとnewlibのビルド~ PowerPC用にビルドとインストールを行います。 $ PATH=/suzakuv/binutils/bin:$PATH $ export PATH $ cd /suzakuv $ tar xvfz newlib-1.17.0.tar.gz $ tar xvfz gcc-4.4.0.tar.gz $ cd gcc-4.4.0 $ ln -s ../newlib-1.17.0/newlib $ ln -s ../newlib-1.17.0/libgloss $ mkdir build $ cd build $ ../configure --target=powerpc-suzakuv-elf --enable-languages=c --prefix=/suzakuv/gcc --with-gmp=/suzakuv/gmp --with-mpfr=/suzakuv/mpfr --disable-libssp --disable-libgcc --disable-ada --with-newlib --with-headers=/suzakuv/newlib-1.17.0/newlib/libc/include/ $ make CFLAGS="-O2" $ make install ビルド結果を確認。~ $ cd /suzakuv/gcc/bin $ ./powerpc-suzakuv-elf-gcc -v Using built-in specs. Target: powerpc-suzakuv-elf Configured with: ../configure --target=powerpc-suzakuv-elf --enable-languages=c --prefix=/suzakuv/gcc --with-gmp=/suzakuv/gmp --with-mpfr=/suzakuv/mpfr --disable-libssp --disable-libgcc --disable-ada --with-newlib --with-headers=/suzakuv/newlib-1.17.0/newlib/libc/include/ Thread model: single gcc version 4.4.0 (GCC) シンボリックリンクを作成しておきます。 $ cd /suzakuv/bin $ ln -s /suzakuv/gcc/bin/powerpc-suzakuv-elf-cpp.exe cpp $ ln -s /suzakuv/gcc/bin/powerpc-suzakuv-elf-gccbug gccbug $ ln -s /suzakuv/gcc/bin/powerpc-suzakuv-elf-gcc-4.4.0.exe gcc-4.4.0 $ ln -s /suzakuv/gcc/bin/powerpc-suzakuv-elf-gcov.exe gcov $ ln -s /suzakuv/gcc/bin/powerpc-suzakuv-elf-gcc.exe gcc ~ +racc環境の構築~ TOPPERS/ASPは、TECS版を使用する予定です。~ TECSの環境変更でraccを使用しますので、ここで構築しておきます。~ 次の手順で行いました。~ ~ ++ディレクトリの準備~ 今回は先ほど作成した /suzakuv を使用します。~ ~ ++raccのダウンロード~ SubVersionリポジトリ http://i.loveruby.net/svn/public/racc/trunk からダウンロードします。~ 今回はWindows上のTortoiseSVNでエクスポートし、/suzakuv/racc-1.4.5 に格納しました。~ ~ ++raccのインストール~ raccのインストールを行います。 $ cd /suzakuv/racc-1.4.5 $ ruby setup.rb **動作確認 [#w9661ca6] 簡単なプログラムを作成して、SUZAKU-V上で動かしてみます。~ ビルドしてSUZAKU-V上のLinux領域に上書きします。~ ~ ++サンプルプログラムについて~ このサンプルプログラムは、SUZAKU-V本体のLED赤を3回点滅・消灯してリブートするものです。~ SUZAKU-VのFPGAコンフィグレーションはデフォルトである必要があります。~ ~ ++ディレクトリ作成~ 次のようにします。 $ cd /suzakuv $ mkdir sample $ cd sample ++ファイル作成~ 次の2つのファイルを作成します。~ ~ 【sample.c】 #define LED_RED (0xF0FFA200) #define LED_ON (0x00000000) #define LED_OFF (0x00000001) #define SOFT_RESET (0xF0FFA000) #define REBOOT (0x00000001) /* binファイルが小さすぎてHermit-At Win32が落ちる対策 */ int a[] = {0,1,2,3}; void main(void) { int *led_red = (int*)LED_RED; int *soft_reset = (int*)SOFT_RESET; int i,j; *led_red = LED_OFF; for(i=0;i<3;i++) { for(j=0;j<100000;j++) { } *led_red = LED_ON; for(j=0;j<100000;j++) { } *led_red = LED_OFF; } *soft_reset = REBOOT; } 【Makefile】 ROOTDIR = /suzakuv PATH := $(ROOTDIR)/bin:$(PATH) CC = gcc AS = as LD = ld OBJCOPY = objcopy CFLAGS = -Wa,-m405 LDLIBS = $(ROOTDIR)/gcc/powerpc-suzakuv-elf/lib/libc.a LDFLAGS = -e main -Ttext 0x00000000 TARGET = sample BIN = $(TARGET).bin ELF = $(TARGET).elf OBJS = $(TARGET).o all: $(BIN) $(BIN): $(ELF) $(OBJCOPY) -O binary $(ELF) $(BIN) $(ELF): $(OBJS) $(LD) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS) %.o: %.c $(CC) -c $(CFLAGS) -o $@ $< clean: -rm -f *.bin *.elf *.o *.map ++プログラムのビルド~ 続いてmakeを実行します。 $ make gcc -c -Wa,-m405 -o sample.o sample.c ld -e main -Ttext 0x00000000 -o sample.elf sample.o /suzakuv/gcc/powerpc-suzakuv-elf/lib/libc.a objcopy -O binary sample.elf sample.bin ++プログラムの書き込み~ PCでターミナルソフトを起動します。ターミナルソフトの設定は次の通り。 ポート : 任意 ボーレート: 115200 データ : 8bit パリティ : なし ストップ : 1bit フロー制御: なし SUZAKU-VのJP1のみショートさせて電源に接続すると、次のメッセージが表示されます。 BBoot v2.6 (powerpc) Press 'z' or 'Z' for BBoot Menu. Hermit-At v1.1.21 (suzaku/powerpc) compiled at 18:40:14, Mar 25 2009 hermit> Harmitが起動すると、SUZAKU-VのLED赤が点灯します。~ 続いて、SUZAKU-V付属のHermit-At Win32で先ほどのsample.binを書き込みます。~ そのため一旦ターミナルを切断して、Hermit-Atの設定を次のように行います。~ Serial Port: 任意 機能 : Download Image : 上記のsample.binを選択 Region : Image ForceLocked: チェックしない この状態で実行をクリックすると、linuxの場所にsample.binが上書きされます。~ ~ ++プログラムの実行~ Hermit-At Win32を終了、再びターミナルを接続してSUZAKU-Vの電源を入れ直します。~ hermitのコマンド入力待ちになるので、bootと入力します。~ うまくいけば、SUZAKU-VのLED赤が消灯し、リブートします。~ ~ 【実行例】 BBoot v2.6 (powerpc) Press 'z' or 'Z' for BBoot Menu. Hermit-At v1.1.21 (suzaku/powerpc) compiled at 18:40:14, Mar 25 2009 hermit> boot Copying kernel............................done. (ここでLED赤が点滅・消灯、リブートします) BBoot v2.6 (powerpc) Press 'z' or 'Z' for BBoot Menu. Hermit-At v1.1.21 (suzaku/powerpc) compiled at 18:40:14, Mar 25 2009 hermit> ~ ([[SUZAKU-VでTOPPERS/ASPを動かす#2]]に続きます) ~ ---- #comment Total:&counter(total); Today:&counter(today); Yesterday:&counter(yesterday);
テキスト整形のルールを表示する