KPIT GNU Tools (18) GNUSH v0601 Windows Tool Chain (ELF) ― 2011年08月25日 21時40分34秒
今回追加するデバイスは SH7231
まだ入手していないので動作テストするのは先の話になる。
コンパイラのバージョンは KPIT GNU Tools GNUSH v0601
HEW のバージョンは 4.09.00
まずスペックを整理してみる。
ROM Start : 0x00000000
Vector Table End : 0X000003FF
ROM End : 0x000BFFFF (SH72315=0x000FFFFF)
Ram1 Start : 0xFFF80000
Ram1 End : 0xFFF87FFF
Ram2 Start : 0xFFFD8000
Ram2 End : 0xFFFDAFFF
ここでは SH72314 の設定だけにする。
ではさっそく始める。
①デバイス名を追加。(一箇所)
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\capp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\cppapp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\lib.det
SH2a の項目に SH7231 を追加。
②デバイス名とそれに対応するヘッダーファイル指定を追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\slib.det
SH2a の項目に SH7231 を追加してヘッダーファイルを指定する。
例)
[SH7231]
header\7231.h
③ヘッダーファイルを追加。
作成したヘッダーファイルを指定ディレクトリに入れる。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\SH2a\header\7231.h
④vectshead が未修正の場合は修正する。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\SH2a\vectshead
⑤セクション情報を追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\scapp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\scppapp.det
SH2a の項目に SH7231 のセクション情報を追加して項目の後にヘッダーファイルを指定する。
[SH7231]
header\7231.h
⑥ベクターテーブルを追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\vcapp.det
例によってFPU なしの設定で使わなければならない。
さらにレジスタバンクも使えない。
環境: (High-performance Embedded Workshop Version 4.09.00.007) + (KPIT GNUSH v0601 Windows Tool Chain (ELF))
参考: KPIT GNU Tools and Support
まだ入手していないので動作テストするのは先の話になる。
コンパイラのバージョンは KPIT GNU Tools GNUSH v0601
HEW のバージョンは 4.09.00
まずスペックを整理してみる。
ROM Start : 0x00000000
Vector Table End : 0X000003FF
ROM End : 0x000BFFFF (SH72315=0x000FFFFF)
Ram1 Start : 0xFFF80000
Ram1 End : 0xFFF87FFF
Ram2 Start : 0xFFFD8000
Ram2 End : 0xFFFDAFFF
ここでは SH72314 の設定だけにする。
ではさっそく始める。
①デバイス名を追加。(一箇所)
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\capp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\cppapp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\lib.det
SH2a の項目に SH7231 を追加。
②デバイス名とそれに対応するヘッダーファイル指定を追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\slib.det
SH2a の項目に SH7231 を追加してヘッダーファイルを指定する。
例)
[SH7231]
header\7231.h
③ヘッダーファイルを追加。
作成したヘッダーファイルを指定ディレクトリに入れる。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\SH2a\header\7231.h
④vectshead が未修正の場合は修正する。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\SH2a\vectshead
⑤セクション情報を追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\scapp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\scppapp.det
SH2a の項目に SH7231 のセクション情報を追加して項目の後にヘッダーファイルを指定する。
[SH7231]
header\7231.h
⑥ベクターテーブルを追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\vcapp.det
例によってFPU なしの設定で使わなければならない。
さらにレジスタバンクも使えない。
環境: (High-performance Embedded Workshop Version 4.09.00.007) + (KPIT GNUSH v0601 Windows Tool Chain (ELF))
参考: KPIT GNU Tools and Support
FRK-RX62N (19) printf (7) KPIT GNURX Simulator ― 2011年07月10日 19時40分09秒
KPIT GNURX でも printf で Simulator Window に表示できるのではないかと思い試してみる。
使用するプロジェクトは先日作成した 、FRK-RX62N (14) printf (3) KPIT GNURX SCI にする。
serial_printf.c をビルドから除外して lowlvl_Sim.src と read_write.c を追加する。
lowlvl_Sim.src は RX600 Series Adding Printf and Scanf Support の中のサンプルをそのままコピーする。
そして read_write.c は以下のとおりだ。 そのほかは前回と同じ、でもこれだけじゃ動かない。もう一つやらなければならないことがある。 そう、I/Oシミュレーションアドレス有効にチェックを入れること。
RX62N KPIT GNURX printf Sample
参照:Renesas Application Notes RX600 Series Adding Printf and Scanf Support (R01AN0509EU0100)
環境:High-performance Embedded Workshop Upgrade 4.09.00
KPIT GNURX v11.02 Windows Tool Chain (ELF)
使用するプロジェクトは先日作成した 、FRK-RX62N (14) printf (3) KPIT GNURX SCI にする。
serial_printf.c をビルドから除外して lowlvl_Sim.src と read_write.c を追加する。
lowlvl_Sim.src は RX600 Series Adding Printf and Scanf Support の中のサンプルをそのままコピーする。
そして read_write.c は以下のとおりだ。 そのほかは前回と同じ、でもこれだけじゃ動かない。もう一つやらなければならないことがある。 そう、I/Oシミュレーションアドレス有効にチェックを入れること。
RX62N KPIT GNURX printf Sample
参照:Renesas Application Notes RX600 Series Adding Printf and Scanf Support (R01AN0509EU0100)
環境:High-performance Embedded Workshop Upgrade 4.09.00
KPIT GNURX v11.02 Windows Tool Chain (ELF)
HEW (6) Tools の登録 (2) ― 2011年06月25日 16時34分45秒
以前 HEW に FDT をTools として登録をしていたがどうも使い勝手が悪い。
起動した時に、開いているプロジェクトのコンフィグディレクトリの中にある S-format ファイルを読み込んで欲しい。
そこで FDT のドキュメントを読みながら引数の設定をいろいろ試してみた。ドキュメントも分かりにくいし、マクロがどのように展開されるのかも分かりにくい。
たったこれだけの設定だが結構苦労した。しかし、まだ初期ディレクトリの設定がうまくいかない。
忘れないうちにここまでの所をメモしておこう。
名前:FDT V4.07
コマンド:C:\Program Files\Renesas\FDT4.07\FDT.exe
引数:/DISCRETESTARTUP "SimpleInterfaceMode /r /u "$(CONFIGDIR)\$(PROJECTNAME).mot""
初期ディレクトリ:$(PROJDIR)
参照:Flash Development Toolkit
起動した時に、開いているプロジェクトのコンフィグディレクトリの中にある S-format ファイルを読み込んで欲しい。
そこで FDT のドキュメントを読みながら引数の設定をいろいろ試してみた。ドキュメントも分かりにくいし、マクロがどのように展開されるのかも分かりにくい。
たったこれだけの設定だが結構苦労した。しかし、まだ初期ディレクトリの設定がうまくいかない。
忘れないうちにここまでの所をメモしておこう。
名前:FDT V4.07
コマンド:C:\Program Files\Renesas\FDT4.07\FDT.exe
引数:/DISCRETESTARTUP "SimpleInterfaceMode /r /u "$(CONFIGDIR)\$(PROJECTNAME).mot""
初期ディレクトリ:$(PROJDIR)
参照:Flash Development Toolkit
FRK-RX62N (15) KPIT GNURX NewDevice 登録 ― 2011年06月23日 21時24分17秒
KPIT GNURX デフォルトのセクション設定ではプロジェクトを作成する毎に修正しなくてはならない。ここらでプロジェクトジェネレータにデバイスの追加又は変更をすることにする。Original は現在の設定、SerialMonitor も使うことを考えると NewSetting の値でちょうどいいかなと思う。
RX62NCQ という名前で新規登録ということにする。
①scapp.det と scppapp.det にデバイス RX62NCQ を追加
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNURX-ELF\GNURX_Info\Support\scapp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNURX-ELF\GNURX_Info\Support\scppapp.det
②RX62N.PGD の名前を RX62NCQ.PGD と変えてコピーする。RX62NCQ.PGD 8行目を以下のように修正
5=vecttbl\rx62ncq.c
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNURX-ELF\GNURX_Info\Support\RX600\RX62NCQ.PGD
③rx62ncq.dat を作成
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNURX-ELF\Hardware\RX600\rx62ncq.dat
④ベクタテーブル rx62n.c に少々変更を加え SerialMonitor で扱いやすくする。ここに示すのは FVECT_SECT の部分だけ、後の部分は変更なし。修正後 rx62ncq.c として保存する。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNURX-ELF\GNURX_Info\Generate\VECTTBL\rx62ncq.c
SerialMonitor を使う場合 Debug_RX600_Serial_Monitor を define する。
これでプロジェクトジェネレータを起動した時に新しいデバイスが現れるはずだ。
環境:High-performance Embedded Workshop Upgrade 4.09.00
KPIT GNURX v11.01 Windows Tool Chain (ELF)
Original NewSetting SerialMonitor SectionName 0xFFFFFFA0 0xFFFFFFA0 0x0000FFF8 .fvectors 0xFFFC0000 0xFFFA0000 0x00002000 .text 0x00001808 0x0000F000 0x0000F000 .istack 0x00001708 0x0000EF00 0x0000EF00 .ustack 0x00001000 0x00000400 0x00000400 .data 0x00000000 .rvectors
RX62NCQ という名前で新規登録ということにする。
①scapp.det と scppapp.det にデバイス RX62NCQ を追加
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNURX-ELF\GNURX_Info\Support\scapp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNURX-ELF\GNURX_Info\Support\scppapp.det
②RX62N.PGD の名前を RX62NCQ.PGD と変えてコピーする。RX62NCQ.PGD 8行目を以下のように修正
5=vecttbl\rx62ncq.c
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNURX-ELF\GNURX_Info\Support\RX600\RX62NCQ.PGD
③rx62ncq.dat を作成
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNURX-ELF\Hardware\RX600\rx62ncq.dat
④ベクタテーブル rx62n.c に少々変更を加え SerialMonitor で扱いやすくする。ここに示すのは FVECT_SECT の部分だけ、後の部分は変更なし。修正後 rx62ncq.c として保存する。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNURX-ELF\GNURX_Info\Generate\VECTTBL\rx62ncq.c
SerialMonitor を使う場合 Debug_RX600_Serial_Monitor を define する。
これでプロジェクトジェネレータを起動した時に新しいデバイスが現れるはずだ。
環境:High-performance Embedded Workshop Upgrade 4.09.00
KPIT GNURX v11.01 Windows Tool Chain (ELF)
FRK-RX62N (8) KPIT GNURX + 新規デバイスの登録 ― 2011年04月25日 23時43分39秒
以前、作成していて中断した新規デバイスの作成、中途半端ながらここにまとめておこう。ビットフィールドの並びの問題が解決できれば追加も容易なのだが...。
作成するのはRX630。
新規作成ファイル
Hardware\RX600\RX630.dat
GNURX_Info\Support\RX600\RX630.PGD
GNURX_Info\Generate\iodefine\rx630.h
GNURX_Info\Generate\hwsetup\rx630.c
GNURX_Info\Generate\IntPRG\rx630.c
GNURX_Info\Generate\RESETPRG\rx630.asm
GNURX_Info\Generate\vect\rx630.h
GNURX_Info\Generate\VECTTBL\rx630.c
項目を追加
GNURX_Info\Support\scapp.det
GNURX_Info\Support\scppapp.det
それでは scapp.det と scppapp.det 内容は同じでリンカースクリプト情報を追加する。
GNURX_Info\Support\RX600\RX630.PGD、プロジェクトに含めるファイルやセクション情報を記述する。
GNURX_Info\Generate\hwsetup\rx630.c、初期化関数で start.asm から呼び出される。(文字がない部分もコピーして張り付ける)
GNURX_Info\Generate\IntPRG\rx630.c、割り込みプログラム中身は空。(文字がない部分もコピーして張り付ける)
GNURX_Info\Generate\iodefine\rx630.h、問題のI/Oヘッダーファイル白紙状態だ。(文字がない部分もコピーして張り付ける)
GNURX_Info\Generate\vect\rx630.h、ベクター定義ヘッダー(文字がない部分もコピーして張り付ける)
GNURX_Info\Generate\VECTTBL\rx630.c、ベクターテーブル(文字がない部分もコピーして張り付ける)
GNURX_Info\Generate\RESETPRG\rx630.asm、リセット時に最初に動くプログラム。
Hardware\RX600\RX630.dat、ハードウェア情報。
環境: HEW Version 4.09.00.007 + KPIT GNURX v11.01 Windows Tool Chain (ELF)
作成するのはRX630。
新規作成ファイル
Hardware\RX600\RX630.dat
GNURX_Info\Support\RX600\RX630.PGD
GNURX_Info\Generate\iodefine\rx630.h
GNURX_Info\Generate\hwsetup\rx630.c
GNURX_Info\Generate\IntPRG\rx630.c
GNURX_Info\Generate\RESETPRG\rx630.asm
GNURX_Info\Generate\vect\rx630.h
GNURX_Info\Generate\VECTTBL\rx630.c
項目を追加
GNURX_Info\Support\scapp.det
GNURX_Info\Support\scppapp.det
それでは scapp.det と scppapp.det 内容は同じでリンカースクリプト情報を追加する。
GNURX_Info\Support\RX600\RX630.PGD、プロジェクトに含めるファイルやセクション情報を記述する。
GNURX_Info\Generate\hwsetup\rx630.c、初期化関数で start.asm から呼び出される。(文字がない部分もコピーして張り付ける)
GNURX_Info\Generate\IntPRG\rx630.c、割り込みプログラム中身は空。(文字がない部分もコピーして張り付ける)
GNURX_Info\Generate\iodefine\rx630.h、問題のI/Oヘッダーファイル白紙状態だ。(文字がない部分もコピーして張り付ける)
GNURX_Info\Generate\vect\rx630.h、ベクター定義ヘッダー(文字がない部分もコピーして張り付ける)
GNURX_Info\Generate\VECTTBL\rx630.c、ベクターテーブル(文字がない部分もコピーして張り付ける)
GNURX_Info\Generate\RESETPRG\rx630.asm、リセット時に最初に動くプログラム。
Hardware\RX600\RX630.dat、ハードウェア情報。
環境: HEW Version 4.09.00.007 + KPIT GNURX v11.01 Windows Tool Chain (ELF)
KPIT GNU Tools (17) GNU Windows Tool Chain ― 2010年11月17日 19時46分51秒
統廃合が進む Renesas の CPU。
今後残るのは RL78 RX SuperH V850 あたりだろうか?
しかし、SuperH V850 は統合されて別のものになりそうな気がする。
そこで気になるのが KPIT GNU Tools の対応。
M16C/M32C H8 のサポートはいずれなくなるのか?
RL78 V850 には対応するのか?
おっと、そういえば Renesas はHEW もやめる。
そうすると HEW ベースの GNU Tools は困ったことになる。
新しい IDE は KPIT の Tool Chain と共存できるのか?
あ、いやいや KPIT には Eclipse もあった。
参照: Renesas
今後残るのは RL78 RX SuperH V850 あたりだろうか?
しかし、SuperH V850 は統合されて別のものになりそうな気がする。
そこで気になるのが KPIT GNU Tools の対応。
M16C/M32C H8 のサポートはいずれなくなるのか?
RL78 V850 には対応するのか?
おっと、そういえば Renesas はHEW もやめる。
そうすると HEW ベースの GNU Tools は困ったことになる。
新しい IDE は KPIT の Tool Chain と共存できるのか?
あ、いやいや KPIT には Eclipse もあった。
参照: Renesas
KPIT GNU Tools (16) GNUSH v0601 Windows Tool Chain (ELF) ― 2010年11月11日 21時56分04秒
今回追加するデバイスは SH7237/SH7239
まだ入手していないので動作テストするのは先の話になる。
コンパイラのバージョンは KPIT GNU Tools GNUSH v0601
HEW のバージョンは 4.07.00.007
まずスペックを整理してみよう。
ROM Start : 0x00000000
Vector Table End : 0X000003FF
ROM End : 0x0003FFFF (SH723x5=0x0007FFFF)
Ram1 Start : 0xFFF80000
Ram1 End : 0xFFF87FFF
Ram2 Start : 0xFFF90000 (SH723x5)
Ram2 End : 0xFFF97FFF (SH723x5)
ここでは SH723x4 の設定だけにしよう。
ではさっそく始める。
①デバイス名を追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\capp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\cppapp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\lib.det
SH2a (No FPU) の項目に SH7237 を追加。
SH2a の項目に SH7239 を追加。
②デバイス名とそれに対応するヘッダーファイル指定を追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\slib.det
SH2a (No FPU)の項目に SH7237 を追加してヘッダーファイルを指定する。
SH2a の項目に SH7239 を追加してヘッダーファイルを指定する。
例)
[SH7237]
header\7237.h
③ヘッダーファイルを追加。
作成したヘッダーファイルを指定ディレクトリに入れる。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\SH2a (No FPU)\header\7237.h
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\SH2a\header\7239.h
④リンカースクリプトを追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\scapp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\scppapp.det
SH2a (No FPU)の項目に SH7237 を追加してヘッダーファイルを指定する。
SH2a の項目に SH7239 を追加してヘッダーファイルを指定する。
[SH7237]
header\7237.h
[SH7239]
header\7239.h
⑤ベクターテーブルを追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\vcapp.det
ただし、 SH7239 は FPU なしで使わなければならない。
さらにレジスタバンクも使えない。
Kpit GNUSH v0601 はこの2点がいまいちだ。
環境: (HEW Version 4.07.00.007) + (KPIT GNUSH v0601 Windows Tool Chain (ELF))
参考: KPIT GNU Tools and Support
まだ入手していないので動作テストするのは先の話になる。
コンパイラのバージョンは KPIT GNU Tools GNUSH v0601
HEW のバージョンは 4.07.00.007
まずスペックを整理してみよう。
ROM Start : 0x00000000
Vector Table End : 0X000003FF
ROM End : 0x0003FFFF (SH723x5=0x0007FFFF)
Ram1 Start : 0xFFF80000
Ram1 End : 0xFFF87FFF
Ram2 Start : 0xFFF90000 (SH723x5)
Ram2 End : 0xFFF97FFF (SH723x5)
ここでは SH723x4 の設定だけにしよう。
ではさっそく始める。
①デバイス名を追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\capp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\cppapp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\lib.det
SH2a (No FPU) の項目に SH7237 を追加。
SH2a の項目に SH7239 を追加。
②デバイス名とそれに対応するヘッダーファイル指定を追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\slib.det
SH2a (No FPU)の項目に SH7237 を追加してヘッダーファイルを指定する。
SH2a の項目に SH7239 を追加してヘッダーファイルを指定する。
例)
[SH7237]
header\7237.h
③ヘッダーファイルを追加。
作成したヘッダーファイルを指定ディレクトリに入れる。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\SH2a (No FPU)\header\7237.h
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\SH2a\header\7239.h
④リンカースクリプトを追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\scapp.det
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\scppapp.det
SH2a (No FPU)の項目に SH7237 を追加してヘッダーファイルを指定する。
SH2a の項目に SH7239 を追加してヘッダーファイルを指定する。
[SH7237]
header\7237.h
[SH7239]
header\7239.h
⑤ベクターテーブルを追加。
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\vcapp.det
ただし、 SH7239 は FPU なしで使わなければならない。
さらにレジスタバンクも使えない。
Kpit GNUSH v0601 はこの2点がいまいちだ。
環境: (HEW Version 4.07.00.007) + (KPIT GNUSH v0601 Windows Tool Chain (ELF))
参考: KPIT GNU Tools and Support
KPIT GNU Tools (15) Debugger ― 2010年05月05日 21時42分58秒
さて、今度はデバッガーを使ってみよう。
いやシミュレータというのかな?
一度こういうのをやってみたかった。
写真をたくさん使ったやつ
先日、作成したデバイス SH7262CQ でワークスペースを作成する。
これはワークスペースを読み込んでコンパイルを行った直後の画面だ。
いやシミュレータというのかな?
一度こういうのをやってみたかった。
写真をたくさん使ったやつ
先日、作成したデバイス SH7262CQ でワークスペースを作成する。
これはワークスペースを読み込んでコンパイルを行った直後の画面だ。
まずセクション情報を確認してみよう。
ここでは 0x1c000000 から 0x00000000 に変更してある。
実を言うと 0x1c000000 のまま動かす方法を知らないからだ。
次に Debug Session を確認しよう。
DefaultSession
SessionSH-2A_Serial_Monitor
SimSessionSH2A-FPU_Cycle
SimSessionSH2A-FPU_Func
ができている。
これはワークスペース作成時に、以下の項目にチェックを入れると自動的に作成される。
SessionSH-2A_Serial_Monitor
SimSessionSH2A-FPU_Cycle
SimSessionSH2A-FPU_Func
ができている。
これはワークスペース作成時に、以下の項目にチェックを入れると自動的に作成される。
ここまで問題がなければセッションを切り替える。
これはよくわからないが CMT をシミュレートするのだろうか?
でも、CMT 以外は出てこない。
そしてダウンロード。
最後に Simulator Memory Resource を確認しよう。
これもプロジェクトジェネレータが自動的に作成してくれるが、いかんせん間違いが多い。(私が間違えた。)
ここで修正して問題がなければ
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\Hardware\SH-2A\SH7262CQ.dat
を修正すればいいだろう。
この Simulator Memory Resource が間違っていると Memory Access Error などになる。
あとは Reset Run でよい。
ハードウェアや割り込みはシミュレーションできないと思うが、安定度は高い。
環境: (HEW Version 4.07.01.004) + (KPIT GNUSH v1001 Windows Tool Chain (ELF))
KPIT GNU Tools (14) GNUSH v1001 Windows Tool Chain (ELF) ― 2010年04月23日 23時23分35秒
Kpit GNUSH v1001 Windows Tool Chain (ELF) に
SH7216 SH7262 SH7264 を追加した。
これで FRK-SH2A の準備は完了だ。
でも、Renesas の環境を使えば何の問題もないのだけど...
これは SH7216 の場合
まず、scapp.det と scppapp.det 、これらは同じ内容でリンカースクリプトの集合体だ。
追加するデバイスのリンカースクリプト情報を書き加える。
以下は、SH7216 の例だ。
次に SH7216.PGD 、プロジェクトジェネレータ・データファイルでプロジェクトに含めるファイルやセクション情報を記述する。
hwsetup¥7216.c は start.asm から呼び出される初期化関数だ。(文字がない部分もコピーして張り付ける)
IntPRG¥SH7216.c は割り込みプログラム。もちろん中身は空。(文字がない部分もコピーして張り付ける)
iodefine¥7216.h ご存じのとおりI/Oヘッダーファイル Renesas のものがそのまま使える。
vect¥SH7216.h ベクター定義ヘッダー(文字がない部分もコピーして張り付ける)
VECTTBL¥SH7216.c ベクターテーブル(文字がない部分もコピーして張り付ける)
Hardware¥SH-2A¥SH7216.dat ハードウェア情報
FPU 付が SH-2A で FPU なしが SH2A-NoFPU となっている。
Renesas の場合は
FPU 付が SH2A-FPU で FPU なしが SH2A となっている。
紛らわしいのでそのうち整理しよう。
環境: (HEW Version 4.07.01.004) + (KPIT GNUSH v1001 Windows Tool Chain (ELF))
SH7216 SH7262 SH7264 を追加した。
これで FRK-SH2A の準備は完了だ。
でも、Renesas の環境を使えば何の問題もないのだけど...
これは SH7216 の場合
C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\GNUSH_Info\Support_3\scapp.det C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\GNUSH_Info\Support_3\scppapp.det C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\GNUSH_Info\Support_3\SH-2A\SH7216.PGD C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\GNUSH_Info\Generate\hwsetup\7216.c C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\GNUSH_Info\Generate\IntPRG\SH7216.c C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\GNUSH_Info\Generate\iodefine\7216.h C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\GNUSH_Info\Generate\vect\SH7216.h C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\GNUSH_Info\Generate\VECTTBL\SH7216.c C:\Program Files\Renesas\Hew\System\Pg\KPIT GNUSH-ELF\Hardware\SH-2A\SH7216.dat
まず、scapp.det と scppapp.det 、これらは同じ内容でリンカースクリプトの集合体だ。
追加するデバイスのリンカースクリプト情報を書き加える。
以下は、SH7216 の例だ。
次に SH7216.PGD 、プロジェクトジェネレータ・データファイルでプロジェクトに含めるファイルやセクション情報を記述する。
hwsetup¥7216.c は start.asm から呼び出される初期化関数だ。(文字がない部分もコピーして張り付ける)
IntPRG¥SH7216.c は割り込みプログラム。もちろん中身は空。(文字がない部分もコピーして張り付ける)
iodefine¥7216.h ご存じのとおりI/Oヘッダーファイル Renesas のものがそのまま使える。
vect¥SH7216.h ベクター定義ヘッダー(文字がない部分もコピーして張り付ける)
VECTTBL¥SH7216.c ベクターテーブル(文字がない部分もコピーして張り付ける)
Hardware¥SH-2A¥SH7216.dat ハードウェア情報
FPU 付が SH-2A で FPU なしが SH2A-NoFPU となっている。
Renesas の場合は
FPU 付が SH2A-FPU で FPU なしが SH2A となっている。
紛らわしいのでそのうち整理しよう。
環境: (HEW Version 4.07.01.004) + (KPIT GNUSH v1001 Windows Tool Chain (ELF))
KPIT GNU Tools (13) GNUSH/H8 v0601 Windows Tool Chain (ELF) ― 2010年03月30日 22時32分25秒
SH/H8 の環境は今でも GNUSH/H8 v0601 Windows Tool Chain (ELF) を使っている。
古いバージョンなので最近の CPU はサポートされてない。
最新のバージョンを使えばいいのかもしれないが v0703 からプロジェクトジェネレータの形式が変わってしまい共存ができなくなってしまった。
それ以来、必要なデバイスのみ追加して使っている。
追加した主な CPU は
SH: 7083 7084 7085 7086 7124 7125 7211 7243 7285 7286
H8: 1653 1655 1658 1663 1664 1668 といったところだ。
GNUSH v0601 PG 追加ファイル
GNUH8 v0601 PG 追加ファイル
次に追加したいと思っているのは
sh7214、sh7216、sh7262、sh7264、sh7730、sh7731
環境: (HEW Version 4.06.00.047) + (KPIT GNUSH/H8 v0601 Windows Tool Chain (ELF))
参考: KPIT GNU Tools and Support
古いバージョンなので最近の CPU はサポートされてない。
最新のバージョンを使えばいいのかもしれないが v0703 からプロジェクトジェネレータの形式が変わってしまい共存ができなくなってしまった。
それ以来、必要なデバイスのみ追加して使っている。
追加した主な CPU は
SH: 7083 7084 7085 7086 7124 7125 7211 7243 7285 7286
H8: 1653 1655 1658 1663 1664 1668 といったところだ。
GNUSH v0601 PG 追加ファイル
GNUH8 v0601 PG 追加ファイル
次に追加したいと思っているのは
sh7214、sh7216、sh7262、sh7264、sh7730、sh7731
環境: (HEW Version 4.06.00.047) + (KPIT GNUSH/H8 v0601 Windows Tool Chain (ELF))
参考: KPIT GNU Tools and Support
最近のコメント