SISO-LAB不定期TOPIC Jan.2005


2005/01/31

AKI-H8/3664のJP2とJP3

せっかくなので、もうちょっと調査
昨日の「AKI-H8/3664のJP2とJP3、配線図間違っているような気がする」の件ですが、せっかくなので、少しテスタで当たってみました。そしたら、以下のようにつながっているみたいです。 う〜ん、やっぱり配線図は逆なような気がします。ま〜、ROM書き込みするときにショートさせるだけなので、どっちでもいいですけど。

昨日の、便利グッズを作ってて、電源LEDもつけれるじゃん!と思って調べていた時に気づきました。もし、同じようなことをやられる場合は、気をつけてください。

20050131P00.JPG - 18,030BYTES

 

2005/01/30

H8/3664の便利グッズ

メカはだいたい組みあがりました。
メカのほう、なんとか1200gを切るメドが立ちまして、仮組み完了です。もう少し、ちゃんと整理したら写真アップします。今回、いろいろ苦しいです。

新!H8/3664の便利グッズ
さて、お題のH8/3664ですが、こんな感じのものです、左側に移っているのがAKI-H8/3664です。

20050130P00.JPG

これは、H8/3664の上に載せて使います。H8/3664の方、BOOTモード切替、リセットのピンが上面に出るようにつけてあり、この基板に接続できるようにしてあります。基板上にはリセットスイッチとBOOTモードの切り替え、さらに、電源LEDもつけてあります。

20050130P01.JPG - 10,308BYTES20050130P02.JPG - 11,265BYTES

ちなみに、右の写真のAKI-H8/3664の下に移っている基板は、製作中の新型SIPHA COREです。え?見えませんか?かなり見づらいですが、右側に少しだけ写っています。そうです。縦方向は27mmなのです(AKI-H8/3664が、縦27mm)。ちなみに横幅は61mmの予定です。

ところで、これを作っていて気がついたのですが、AKI-H8/3664についている配線図って…

JP2とJP3って逆じゃないでしょうか?

 

2005/01/29

充電器を買おうと思うのですが…

予算1万5千円ぐらいで
秋月の充電器キットと放電器キットを使っているんですが、ZIPPONさんのホームページを見ていたら、高機能な充放電器が欲しくなってきてしまいました。手元にあるニッケル水素電池がどれだけの容量があるのか見てみたい〜なんていう衝動に駆られています。

予算で考えると、ちょっとシュルツは無理ですが、もう1万円落として、KSチャージャDX PRO()か、スワローチャージャアドバンス(あたりなら買えそうです。どっちかな〜なんて思っているんですが、どっちがいいんでしょ〜、う〜ん。もし、こっちのここがいいよ〜なんて話があったら、教えてもらえるとありがたいのです。

PRS3401
なんだか、タイムリーすぎて楽しいのですが、I-Beeのホームページでマイクロサーボの写真が公開されました。かっちょいいな〜。さらに「有償モニタ」の募集があり(ぴしいさん、もう申し込まれたとのこと。速い、さすが!)、そのお値段がなんと784より少し高い\5,500で、なかなかいい感じの価格です。なんてタイムリー!う〜、この条件なら非常に買ってみたいですね〜。充電器をあきらめれば…あうあう。

 

2005/01/27

夢のマイクロサーボ?

Pirkus-R Type-01
我らがJinSatoさんもかんでいる、I-Beeさんとこの「携帯電話で操作できるRobot」Pirkus-Rですが、デジタルのマイクロサーボということで、小さいもの大好きなSISOとしては非常に興味があり、JinSatoさんとこの掲示板で質問させて頂いていたんですが、近日中に詳細が載るとの情報をゲット!

そうしている間に、I-Beeのホームページでマイクロサーボのスペック、値段が発表されていました。
う〜ん、けっこう高いですけど、小さくて丈夫そうで軽くて、まさしく夢のサーボか〜!って感じです。デジタル制御でトルクが7.1Kg-cm(7.2V)、それでこのサイズ。ギアもアルマイトギヤーであることを考えると、なかなか豪華です。でも、784と同じぐらいか、もうちょいぐらいの値段がいいかな 〜。

サーボの写真はまだ載っていないのですが、すごく気になりますね〜。

 

2005/01/26

KPITのHEW3+GNUに載せ換えてみました。

KPIT環境でSIPHA COREをビルド
今回やってみたいことで、現在、GDL(Best Technology)でビルドしているSIPHA COREのプログラムを、KPIT HEW3+GNUに載せ換えてみたかったので、一発、やってみました。

そしたら、あららっという感じで載せ換え完了してしまいました。最後にFDT3(これも、KPITのオススメ通り、英語版ですが)で書き込みをして、動作確認をちょっとしてみたのですが、ばっちりです。

変更したところ
まず、I/O宣言が異なっている部分があるので、それを修正しました。具体的には、アナログ入力モジュール関係で、以下のところを修正しました。
AD.ADCSR⇒AD.CSR
AD.ADDRA⇒AD.DRA

それから、GDLと違って、割り込みのベクターテーブルを自分で書かないといけないので、自動生成されたvects.cに変更を加えて、割り込み関数本体の方に"#pragma interrupt"を追加しました。

後は、EI、DI、_WORD、_BYTEの宣言を追加して、ついでにインクルードしまくっていたソースコードをちゃんと分割して、はいOK!という感じで、拍子抜けするほどでした。これで、Simulator上で変数Watch等が使えるようになるので、Action Script機能などのデバッグには効果絶大のハズ。よしよし。

でも、Simulated I/Oが動かないんですよね〜。HEW3+Renesasコンパイラですと、printf()を実行するとSimulated I/Oというウィンドウにメッセージを表示できるのですが、対応してないのかな?というわけで、現在、問い合わせ中です。なんとなく、対応してなさそうです。

コンパイル時間ですが、GDLと比較すると、分割コンパイルしている分だけ速いですが、もともと、そう大きなソースコードでも無いので、大きくは変わらないです。それにしても、変数ウォッチとブレークポイントは便利だな〜。

 

2005/01/25

MICRO-MGケーブル横だし

設計ミス
今、設計修正部品を製作中なのですが、今回のミスはこんな感じです。

  • 部品をつけたら別のネジ穴が隠れて締めれなかった…部品を削った。
  • サラビスのサラの向きを間違えた…部品作り直し。
  • 稼働部分の干渉で部品間は良かったが、ケーブルが通らなかった…ケースの横からケーブルを出した。

というわけで、3つめの「ケーブル横だし」の写真です。設計ミスでやむを得ず改造したのですが、よく考えてみると、これ、なかなかよさそうです。ヒザのサーボ取り付け位置をミスったので横だししたのですが、稼働範囲と照らし合わせると、標準位置よりケーブルに力がかからなくてよさそうです。

20050125P00.JPG - 6,838BYTES

やるときですが、MICRO-MGは中に隙間が無いので、 ケーブルの被覆を気をつける必要がありました。最初、ケーブルの厚みだけ下のケースを削ったのですが、それだとケーブルの被覆に傷をつけてしまいました。で、結局、もともと開いている穴と同じ大きさにしました。

 

2005/01/23

脚の膝下までなんとか…

完成前から進化…
20050123P00.JPG - 18,483BYTES既にROBO-ONEエントリ始まっているのに、まだこんな感じです。心の予定では、もっとさくっと行く予定だったんですが、設計ミス数発。致命的干渉発見。完成する前から既に進化(修正)し始めています。

なんとか今週末には…。

 

2005/01/22

S03Tの動作角度精度アップ

S03Tにも同じ問題がありました。
MICRO-MGのジョイントピースを入れ替えてから、どうも角度精度が気になりだしたりなんかしているわけですが、S03Tの方も、よ〜っく見ていたら、同じように、ポテンショとファイナルギアのあいだの遊びによる角度ズレがありました。

20050122P00.JPG - 6,547BYTES20050122P01.JPG - 6,540BYTES

S03Tの中身です(このあとHG化されます)。ベアリングの上に載っているパーツがファイナルギアとポテンショをつなぐパーツです。よくみてみたのですが、固くはまっているということはないですが、ポテンショとこのパーツの間には隙間は無いようです。

20050122P02.JPG - 9,340BYTES

これはファイナルギアの裏側で、先ほどのパーツをはめ込んだ状態です。ここが結構、ガタがあるのを発見!しばしどうしようか考えてみたのですが…

20050122P03.JPG特に問題が無さそうだったので、接着してしまいました。ビニール系接着剤でつけたので、後で取ることもできそうです。

結果は、良好です。しかし、S03Tって、結構オーバーシュート大きいです。ロボット作り始めた頃は、サーボが動くだけでうれしかったもんですが、最近は、目が肥えてきたのかな〜。

 

2005/01/20

WideStudioでマウスボタンをチェック

今日からROBO-ONEエントリー開始ですね!うちの進捗は、メカは、まだ未完成ですが、部品加工はほとんど終わっているので、週末ぐらいには形ができるかな〜ぐらいです。最近まで、SIPHA TERMのソースコード復活をやっていたので、そのまま、SIPHA TERMを改良してたりします。最近、しばらくプログラム触っていないと、プログラムの作り方を忘れてしまうんで、一気に!という感じです。そんなわけで、その中から出てきたTOPICをおひとつ。

マウスボタンチェック
20050120P00.JPG - 6,2884BYTES「マウスボタンチェック」…ボタン部品を作っておいて、ACTIVATEイベントプロシージャさえ書けば、あたりまえのようにボタン入力のプログラムを作ることができるのですが、ボタンを押すときに、ちょっと特別な機能を呼び出したい場合(例えば、左ボタンでボタンを押すと、1つだけサーボ信号オフ、右ボタンで押すと全部オフとか)、マウスボタンの判定をしたくなる時があります。

これまた、結構簡単だったので、やり方を紹介します。

WideStudioでは、「最後に押したマウスボタンを取り出す」機能があります。これを普通にボタンが押された時に呼び出される処理に追加してやればOKです。

具体的には、WSDmouseというクラスを使用します。

まずは、マウスのグローバルインスタンスを取得します。「???」な感じですが、SISOもよくわかってないです。きっと、アプリケーション中に、マウスを管理しているインスタンスとやらがあり、そこにアクセスするためには、まずは取得するということだと思って使っています。

WSDmouse* mouse = WSGIappMouse();

はい。これでマウスのグローバルインスタンスが取得できます。そして、後は判定するだけです。状態の取得は、getTargetBtn()を使用しますが、この返り値は次のように定義されています。

WS_MOUSE_BTN1	左ボタン
WS_MOUSE_BTN2	中ボタン(ホイール)
WS_MOUSE_BTN3	右ボタン

後はこれをSWITCH文などで振るようにコーディングするだけですね!ボタンが押された時の結果を表示するラベルを、"vlabClickStatus"という名前で作ってそこのところをコーディングすると、次のような感じになります。

WSDmouse* mouse = WSGIappMouse();

switch( mouse->getTargetBtn()){
case WS_MOUSE_BTN1:					//	左ボタン
    vlabClickStatus->setProperty( WSNlabelString, "左ボタン" );
    break;
case WS_MOUSE_BTN2:					//	中ボタン
    vlabClickStatus->setProperty( WSNlabelString, "中ボタン" );
    break;
case WS_MOUSE_BTN3:					//	右ボタン
    vlabClickStatus->setProperty( WSNlabelString, "右ボタン" );
    break;
}

最後に、ヘッダファイルのインクルードと、ラベル部品の外部宣言も忘れずにしておきます。これでばっちりです。
全プログラムのダウンロード

「これでいいのかな〜」なんてちょっと思ったりしますが、今のところ、大丈夫そうなので、きっと大丈夫でしょう。もし間違ってたら連絡お願いいたします。

 

2005/01/18

KPITからメールが来ました。

Feedback reply from KPIT GNU Tools
お久しぶりです。一週間ぶりの更新です。ようやくSIPHA TERMのソースコード完全復活+ちょっと改良終わりまして、現在、新SIPHA CORE用のプログラムをいじっています。こっちの方も、前回のROBO-ONE後、改良したコードが無くなっていて修正中です。また、今度のROBO-ONEに間に合うかどうかはわからないのですが、SIPHA COREのハードウェアを作り直してピンアサインメントを買えようと思ってまして、まずは、現状ソフトウェアをベースにして合わせ込みだけやっています。もし間に合えば、センサ制御に手を出したいな〜なんて思ってまして、そのためのピン変更(タイマモジュール端子を使いたい)です。

ところで、2005/01/03不定期TOPICでKPITツールの話を書きましたが、最後に書いた「Provide feedback」(「使用感とかご意見ください」とうダイアログの話)、実はあの時、ちょこっと意見を書いて送信したのですが、なんと、返事が返ってきました。びっくり!
書いた内容は、「ライティングツールをHEWに統合してくれるともっといい」、「ターゲットを増やして欲しい」、「ROMに書き込むチュートリアルをアップして欲しい」の3つだったんですが、丁寧に、今後増やしていくとか、今のところ難しいとか、返事を頂きました。こんなふうに返事を頂けると、うれしいもんです。

今のところ、SIPHA COREを移植するには至ってはいませんが、メカの方が組みあがったら挑戦してみようかな〜と思っています。なんといっても、あのシミュレータ機能はとても魅力的ですので。いいツールなので、時間が取れたらプログラミング手順をぜひとも紹介したいと思っています。

kpitCummins.gif - 3,302BYTES

 

2005/01/11

WideStudioで、読み込んだ画像ファイルに合わせてウィンドウサイズ調整

リブレットL1は、画面サイズが1280x600
知ってはいたけど、Libretto L1の画面サイズは1280x600です。そんなわけで、1024x768に最適化されたSIPHA TERMは全部表示することができません。 Librettoの方で表示モードを切り替えてもいいのですが、スクロールするようになるだけなので操作感はイマイチ。というわけで、一番問題になる、 サーボのスライダ操作画面を、読み込んだ画像ファイルサイズに合わせてリサイズする機能を組み込む事にしました。 もう少し良いやり方としては、イメージクラスがあるので、そこに読み込んでスクロールウィンドウもつけて云々という のがあるのですが、今回は、画像サイズにあわせるほうが使いやすいかな〜と思っちゃったので、ウィンドウそのものを あわせこむ方でやってみました。

# 何気に勢いでやってしまいましたが、後で、どっちでもよかったかな?と思ったことはヒミツ。

背景画にあわせてウィンドウサイズを変更するには?

結構簡単に…できたにはできたのですが、実は「あまり自信が無い」です。もし、間違っていたらよろしくお願いいたします。

さて、ざくっと要点解説ですが、TSC16もそうなんですが、画像データ、基本的にはウィンドウの背景画として読み込ませています。ウィンドウのプロパティで、「背景画」というのがありますが、これをプログラムで操作しています。TSC16の場合は直接ソースコードで指定していますが、この項目にsetProperty()すれば画像ファイルを動的に読み込むことができます(簡単〜♪)。

さて、WideStudio、ヘルプファイルを読むと、どうやら画像扱うためには「WSDimage」というクラスを通じて扱うようになっているようです。また、その画像元ネタは、「WSGIappImageSet」というプログラム内でグローバルに宣言されている(WideStudioでアプリケーションを作成すると、そのアプリケーションに自動的に引っ付いていると理解しておいてください)画像管理オブジェクト?から引っ張ってくるようです。

そんなわけで、まずはこんなコードで初期化されます。

WSDimage* pimgBasePic;
                                        // test.jpg のイメージインスタンスを取得。
pimgBasePic = WSGIappImageSet()->getImage( "test.jpg" );

これで、「イメージインスタンス」とやらが取得できますので、ここからサイズ情報を取り出し、自ウィンドウのウィンドウサイズを変更します。まずはサイズ取得です。サイズ取得用のメソッドが用意されていますので、以下のようなコードでさらっと読み出すことができます。

unsigned short	usWidth, usHeight;

usWidth = (unsigned short)pimgBasePic->getImageWidth();   // 画像横幅の取得
usHeight = (unsigned short)pimgBasePic->getImageHeight(); // 画像高さの取得

後は、この値を使って、自ウィンドウのプロパティを操作するだけです。

object->setProperty( WSNwidth, usWidth );                 // ウィンドウサイズの設定
object->setProperty( WSNheight, usHeight );               // ウィンドウサイズの設定

object->setProperty( WSNbackPixmap, "test.jpg" );         // 背景画の設定

「object」というのは、自分自身のクラスポインタです…と書くとややこしいのですが、簡単に言うと、 WideStudioでイベントプロシージャを記述すると、自動的にこの「object」というポインタが渡されるコードが生成されるのですが、呼び出し元の情報(ポインタ)がセットされるようになっています。

そこで、呼び出し元を操作したい場合は、このポインタを使って操作します。「object」の型は「WSCbase」というクラスで、プロパティ操作等のメソッドを含んだクラスです。よって、プロパティ操作をする場合、このクラスポインタをそのまましようすればOKです。

このように、WideStudioの場合、ウィンドウに対する操作は、ほとんど「setProperty」を実行することで行うことができます。つまり、ビルダの「プロパティ」ウィンドウから手入力であれこれしていることを、そのままプログラムで「setProperty」と書いていくだけで、同じことをすることができます。

プログラムコードと操作が直感的につながりやすいので、WideStudioで「いいなぁ〜」と思っている点の1つです。ところで、このプログラム、なんとなく無駄に2回も画像ファイルにアクセスしている気がするので、本当は、もっと良いやり方がありそうな気がします。う〜ん。

 

2005/01/09

WideStudioでStatic Linkのアプリケーション作成

WideStudio v3.80-7
現在、SIPHA TERMソースコードの復旧中なわけですが、ついでということで、WideStudioも最新版(V3.80-7)にバージョンアップしました。v3.70と比較すると、ライブラリが増えているような気がします。何気に気になったのが「スタティックリンク(DLL無し)」というオプション。これは、「プロジェクト設定」の「リンク」タブの中にあるのですが、ひょっとして、実行ファイルだけで動かせるようになるリンク設定(ダイナミックリンクを使用しない)かな〜と思って試してみたら、そのとおりでした。

ちょっと前に、「Wide Studioで作ったアプリケーションって、どのDLLが必要なんだろう?」と思って少し調べていたんですが、これを使えば、WideStudioがインストールされていないWindowsにアプリを入れても動作できます。うちのLibretto L1は、Dual Bootにしてあって、何にも追加DLLが入ってない方のWindowsがあるので、そこで試してみたところ、バッチリ動作しました。

き、気づかなかった…
ん?そういえば、前のWideStudio (v3.70)のリンクタブも。同じレイアウトだったような気がします。でも、あの時はこのオプションに気づきませんでした。なぜでしょう???というわけで、もう一度、バージョンダウンをして確認してみました。

20050109P00.JPG - 11,724BYTES

これは、v3.80のリンクタブですが、リンク方式□「スタティックリンク(DLL無し)」と書いてありますこれにチェックを入れると、スタティックリンクのアプリケーションを作成することができます。じゃあ、V3.70の方はどうなっていたかといいますと

20050109P01.JPG - 12,214BYTES

なんと、こういう表示になっています。この状態が「ダイナミックリンク設定」です。今思えば、試しに押してみてもよかったチェックボックスですが、ちと難しかったです…。でもチェックボックスって、「チェックするとその状態になる説明文が書いてある」のが多いと思うので、気が付きませんでした。ちなみに、ここの動き、なかなか凝ってまして、チェックすると…

20050109P02.JPG - 12,253BYTES

テキストが「スタティックリンク(DLL無し)」に変わります。

ダイナミックリンクライブラリについて
フリーソフトとかで、「VBのランタイムを入れないとダメだよ〜」とか聞いたことありませんか?WideStudioに限らず、アプリケーションが起動するときに共通のライブラリを動的に読み込んで実行するタイプのものがあります。
この仕組みのことをダイナミックリンク(ライブラリ)なんていうそうなんですが、これを使うと、ライブラリを他のアプリケーションと共有できるのでディスクの節約をすることができます。また、実行プログラム本体も小さくなり、ダウンロードも早くなります。しかし、もし、そのライブラリがパソコンに入ってないと、そのプログラムは動作できません。Visual C++なんかですと、MFCライブラリなどがあります。

対して、スタティックリンクでアプリケーションを作成すると、アプリケーションのサイズは大きくなりますが、パソコン毎のライブラリインストール状態を気にしなくてよくなります。 気になる実行ファイルのサイズですが、SIPHA TERMで試してみたところ、380Byteのプログラムが3.6MByteになりました。実行ファイルのサイズが大きくなったとはいえ、実際に、小さいサイズのアプリを起動しても、恐らく同じだけWideStudioのDLL(ダイナミックリンクライブラリ)がロードされるわけなのでパフォーマンスに差は無いと思われます。ちなみにZIPで圧縮してみたら1.2MByteぐらいにはなりました。WideStudioでプログラムを作って人に配布する場合は、スタティックリンクにしておいた方が手堅そうですね。

 

2005/01/07

SIPHA TERMソースコード復旧中

20050107P00.JPG - 8,729BYTES

メカを組み立てる前に、サーボのデータ取りでもしようかと思ったら…そうでした。SIPHA TERMは、前の外付けディスククラッシュで動かないことを思い出してしまいました。クラッシュと入っても、70%ぐらいは削除痕からソースを復活できたので、残りの分を書き足しています。書き出すと、いろいろ欲が出るもので、とりあえず、メインウインドウの表示イメージは、前よりシャープな感じにしてみました。なかなか快調で、あと数日ぐらいで復活できそうです。

 

2005/01/05

なかなか取れないような取れるようなジョイントピース

20050105P00.JPG - 17,053BYTES今回使用予定のMICRO-MGのジョイントピースを、やっとZipponさんからのスペシャルパーツに入れ替えました。

いや〜、オリジナルのパーツを取り外すのに苦労しました。簡単に取れるもの、取れないものいろいろありまして、そのまま次にも使えそうな状態のものもあれば、こりゃダメだ〜なものまで、いろいろできました。(^_^;

はずすのには、最初、精密ドライバでこじってたんですが、なかなか外れないヤツにあたったところから、写真右に写っている、普通サイズのドライバで、「うおりゃぁぁ」といわんばかりの力ではずしていました。

みなさんは、どうやってはずしていますか?

 

2005/01/03

2005年、書初めはC言語

本年もよろしくお願いいたします。
あけましておめでとうございます。本年もよろしくお願いいたします。いや〜、2005年になりましたよ。って、もう三日なんですが、年末年始は少しロボットから離れて楽しくやってます。

書初め
友人の子供が書初めをするというのを聞いて、このタイトルを思いついたのですが、うちの書初めは、「KPIT環境のHEW3でプログラムを書く」になりました。年末にちょっと手をつけ始めたKPITのHEW3+GCCですが、なんとか簡単なシリアル通信プログラムと、TSC16の移植、動作確認ができるところまでいけました。

20050103P04.JPG - 12,985BYTES
クリックで拡大します。

結局、KPITのFAQを読んでいたら、ROMに書くにはWindowsの場合、RENESASのホームページ(英語)からFDTをダウンロードして使ってね!というのがあって(LINUXの場合は、ツールが用意されているようです)、ダウンロードして使いました。友達から、昔のトランジスタ技術も借りてきていたので、操作方法も難なくクリアできました。

これ、HEW3の画面なんですが、

20050103P00.JPG - 12,463BYTES

この、「Configure Flash Project」というところをクリックすると、

20050103P01.JPG - 8,484BYTES
クリックで拡大できます。

いかにもFDTなプログラムが起動するんですが、今のところ、これで書き込めたためしは無いです。将来対応なのかな???

というわけで、割り込みの書き方もわかったというところで、次はSIPHA COREの移植をしようと思います。

まとめるにはちょっと時間がかかりそうなので、それは後ほどということにしますが、ネットで「プロジェクトを作ってROM焼きまでしてみました〜」という情報が意外に少ないので、とりあえずポイントだけ書いておきます。

  • ツールの入手について
    • 入手方法
      ありがたいことに無料で、ホームページからダウンロードします。また、オーダーすると、CDROM配布もあるようです。
    • ツールのダウンロード
      KPIT Cummins Infosystems Limitedよりダウンロードします。
    • ユーザ登録
      ホームページから登録すると、「登録してくれてありがとう。これから手動で登録するからちょっと待っててね〜」というメールと「登録したよ、パスワードはこれ」という2通のメールが来ます。自分の場合、1時間程度でした。
    • ダウンロードするツール
      ダウンロードするツールは、Windows上にてHEW3+GCCを使って、H8の開発を行うケースで、3つです。
      「無償ダウンロード」メニューの中から進んでいってダウンロードします。サイズは結構でかいです(30M、30M、10Mぐらい)。
      • 「ルネサスツール」HEW 3.0.6-ntc for KPIT GNU Tools with Simulators
      • 「KPIT GNUツール」GNUH8 v0403 Windows Tool Chain (ELF)
      • 「KPIT GNUツール」GDBH8 v0402 Windows Debugger (COFF/ELF Format)
  • インストール
    インストールですが、最初にHEW3をインストールすること以外に、特に注意点はありません。HEW3を先にインストールすることにより、コンパイラとデバッガが、インストール時に自動的にHEW3に登録されます。インストールするフォルダを変えてみたりしましたが、今のところ問題はありません。ただ、もし既に日本語版のHEW3が入っていたりすると、いろいろあるかもなので、すっきりとやるならば、アンインストールしておいたほうがいいと思います。
  • まずは使ってみる
    KPITのホームページに、簡単にまずは使ってみるための日本語のドキュメントがあります。ホームページ上のメニューから「はじめに」−「ツールを使用するために−HEW」と選択すると、「KPIT Cummins GNUツールを使用する為に」がありますので、これを読みながらやれば、インストールからシミュレータ上でのデバッグまでをやってみることができます。
  • プログラムを作ってみる
    • 自動生成されたコードについて
      H8/3664のコードを書いている限りでは、自動生成されたIO宣言用のヘッダファイルや、スタートアップルーチンを修正する必要はありませんでした。
    • ROM化について
      モトローラのSフォーマットって言うんでしょうか?これに変換するツールがついているので、HEW3のビルド設定(Build Phase)の中に記述して呼び出すようにしてやる必要があります。具体的には、"h8300-elf-objcopy.exe"というツールを使って".xファイル"から"MOTファイル"へ変換します。パラメータ(Default options)は、"-O srec $(FILENAME) $(WORKSPNAME).mot"が個人的に気に入ってます。
    • プログラムのマイコンへの書き込みについて
      当初、HEW3から呼び出せる(実際、一部の機能は呼ばれているように見える)と思っていたのですが、結局だめでした。FAQを読んでいたら、「FDTを使ってください」とのことで…FAQの中には古いものもありますので、HEW3世代においてもこのFAQがあたりなのかはわからなかったのですが、素直にFDTをダウンロードしました。これは、ルネサスのホームページからダウンロードすることができます。キーなどを請求する必要はありませんが、一応、同意確認があるページなので直接リンクは止めておいて、行き方を書いておきます。
      • 英語版 Flash Development Toolkit Ver.3.3
        [GLOBAL SITE]-[PRODUCTS]-[Software and Tools]-[Downlaod]-[Evaluation Software]-[Flash and PROM Programming]-[Flash Development Toolkit]と行って、DOWNLOADボタンを押します。
      • 日本語版 Flash Development Toolkit Ver.3.3
        メニューで、[製品]-[マイコン]-[開発環境]と行き、もう一度メニューで、[オンボード書き込みツール]-[各種ダウンロード]-[F-ZTATオンボード書き込みツール]-[無償評価版]といきます。
        日本語版のほうは、アンケート入力があります。
      追加確認情報としては、「Linuxによるマイコンプログラミングのページ」(リンクしちゃって良いのかわからなかったので、タイトルだけ紹介させていただきます)で公開されている、「Open SH/H8 writer」でも書き込みOKでした。しかし、GDL付属の「フラッシュライタ」はNGでした(サイズ表示が変な値になって、書き込み失敗で終わります)。
  • メリット・デメリットとか
    • IDE(統合環境)好きなら、結構満足。
    • ちゃんとソースファイル、複数作れます。
    • 最初のコンパイルは時間かかるが、二回目からはサクサク。うちのLibretto、Crusoeですがバッチリです。たぶん、初回は、コンパイル以外に、「プロジェクトのなんたらかんたら」みたいなことをしているのでは?と思います。
    • HEW3で「便利だ〜」と言われている機能がどこまで使えるかは未確認ですが、とりあえず、シミュレータで、動作サイクル数の表示ができるのはとてもいい!です。他にも、なんか、メモリマップのグラフとか出るんですが、まだよくわかっていないです。
    • シミュレータは、どこまでできるのかはわかりませんが、ロジックチェックには、すごい便利!ブレークで止めたり変数みたり。
    • デフォルトのツールバーのアイコン、多すぎ。FDT機能も統合してくれるとうれしいのですが…。
    • もうちょっとネットでKPIT+HEW3の情報が増えるといいな〜(まずは自分が書こう)。
    • RENESASのHEW3チュートリアルを一度読んでおくといいです。
    • こういうツールをサクサクと使い始めることができる人がうらやましい…。 
    • 最後になりますが、OAKS16-MINIとその開発環境もすばらしく、こっちならこんな風には苦労しないような…

あ、あと、使っていると、時々こういうダイアログが出ます(オフにもできますので、ご安心を)。

20050103P03.JPG - 13,051BYTES

このダイアログで「Provide feedback」を押すと、ブラウザが起動して「使い勝手どうですか〜?」というアンケートのホームページが開きます。日本語もOKとのことなので、使用感とかを書いてあげると喜ばれるかも知れません。「Please don't ask me again」のチェックボックスを入れると開かないようですが、KPITの人って控えめなのかな???

 


Back Number of SISO-LAB FUTEIKI TOPIC
2004 Jan. Feb. Mar. Apr. May. Jun. Jul. Aug. Sep. Oct. Nov. Dec.
2003 Jan. Feb. Mar. Apr. May. Jun. Jul. Aug. Sep. Oct. Nov. Dec.

Top Page