GCC+HEWで行こう!

1.hilbert変換器が正常に動かないのは...

 

前節で、HEW3を使うと、hilbert変換器が、正常に動かなくなりました。

MATH

メイン関数は、こんな感じで、テストしてみました。

MATH

シミュレートデバッグで、試してみましたが...

MATH

値が、メチャクチャです、訳がわからなくなりました、トホホ。

 

HEW3の試用期間が、愈々、なくなりましたので、寂しいと感じておりましたが

KPITで、素晴らしいものをみつけました。

 

    何と、HEW3上で、GCCを使って、ビルドできるのです! ヒャッホー '(@_@)'

http://www.kpitgnutools.com/index.php

 

MATH

MATH

 

シミュレートしている所です。

MATH

 

FDT(Flush Development ToolKit)のAPIも、入っているのですが...

FDT Configurationファイル等が、ありません...

FDTが動けば、

きっと、

実機にプログラムをdownloadして、リモートデバッグが、できるに違いありません。(EDK7047を見てみると、そうらしい。)

 

どうやるんか、まだ、わかりません。

 

勿論、HEW 3 with GCCで、simulateは、できます。

simulateの方法は、やはり、KPITのDocumentで調べました、丁寧に書かれています。

so many thanks to KPIT

 

 

KPIT's HEW3で

自前の int macw(short* a,short+b)は、シミュレートでも、勿論うまく働いてくれました。

 

前節で、hilbert変換器が、うまく動かないと書いたのですが、

周波数変換プログラムでの出力は

AD変換された入力信号と、発振器のミックスなので

どうしても、

 

output=moto_data*real_y - data*imag_y;

output=output>>12;

output +=400;

 

このあたりの、計算結果が欲しいのです。

 

これは、実機で、実際に入力信号をAD変換してみないと、解りません...

そうしないと、出力の10ビットDA変換器の範囲に、入りません。

 

 

そこで、例によって、インターネットで検索しまくりました。

すこし解って来ました事は

 

   1.ルネサスのモニタープログラムに合うように、GDBを作り変える。

   2.SH7047Fの方に、GDBのstub(スタブ)を焼きこみ、GDBと、交信させる。

(スタブは、SHの方に入れる、と言うことが、やっと、解ってきました。)

 

この2つの方法が、あるようです...

 

2.スタブで、やってみよう!

 

スタブの、何たるかが、やっと、わかってきました。

GDBとSCIを通じて、交信するプログラムです。

SH側のromに、入れるほうの奴なんです。

 

プログラムは、こんな感じです。

int gdb_getc (void)

{

unsigned char c;

*SSR &= ~( PER \ FER \ ORER );

while (!(*SSR & RDRF));

c = *RDR;

*SSR &= ~RDRF;

return c;

}

void gdb_monitor_onexit (void) {}

void gdb_startup (void)

{

/* enable txd/rxd lines */

*PFC_PACRL2 = PACRL2;

 

/* enable re + te, no interrupts */

*SMR = 0;

*BRR = BAUD;

*SCR = 0x30;

/* turn on the 7045EDK's green led */

*PFC_PEIOR = 0x20;

*IO_PEDR = 0;

return;

}

 

スタブ自体は、難しい事を、やっていません。

ただし、SH7047用のスタブは、見つけることができませんでした。

 

SH7045なら、KPITから辿って、スタブが見つかりました。

 

私が、探してきたのは、

gdbstubs-20030326-1117CDT.tar

と、言うものです。

RedHatの所にも、勿論、あるようです。

 

いま、SH7045用を、SH7047用に、作り変える事を試している所です、たのんまっしぇえ!動いてや!

 

1.ルネサスのモニタープログラムに合うように、GDBを作り変える。

 

この方法は、H8用なら

gdb-hmon.tar.gz

が、応用できるみたいですよ.. 私は.よくわかりません。

 

ついでに、unixの手ほどきを、

windows上で、シームレスで動くSFU3.5日本語版を動かしてみて、います。

 

 

Windows Services for UNIX (SFU) 3.5 は、

「IT プロや開発者が Windows を UNIX および Linux 環境と統合するのに必要なツールと環境を提供します。 」

http://www.microsoft.com/japan/windows/sfu/

H.16.2.13

 

This document created by Scientific Notebook 4.1. この文書は次の製品で作成しました Scientific Notebook 4.1.