[編集]いや別に私は秋月の回し者ではないのですが、現実的にH8マイコンで遊ぼうとなると、頼りにしています秋月さん!って事になるので、やはり紹介します。H8マイコンを初めて触るかなりの方が、秋月のAE-3048F基板(H8/3048F)を手にするようで、しかしこの基板、ボードのみ購入すると、その後が大変。書き込み用の特殊なライターを作らないと、にっちもさっちも行かないので、ここでいきなりつまづく人も居るようです。昔はともかく、今時書き込みに12V必要と言うのも辛い、失敗するとH8ごと壊す危険性も有るし。そこでお勧めなのがこの基板。記事の一部には、姉妹品のLANタイプを使用しています。http://akizukidenshi.com/catalog/items2.php?q=K-171&s=score&p=1&r=1&page=#K-00171同じボードで3048Fにも、3052Fにも対応可能だし、私が購入した時は、+12Vを生成してくれるMAX662も、SRAMも付属していました。一応、別にACアダプターを用意しなくても、パソコンのUSBからバスパワーで電源供給できます。書き込みモードへの移行は、スイッチ一つでOKです。LCDは残念ながら付属していないのかな?、取り合えずCコンパイラは無料で幾らでも入手可能なので、個別に、必要なものだけ買ってみて下さい。これに、やはり秋月のRS232Cストレートケーブルを購入するのが一番無難です。昔のモデムのストレートケーブルは使えません。購入前に秋月に必要なものを良く聞いて下さいね。追伸!組み立ては、ちょっと癖があるので、マニュアルを良く読んで下さい。回路図はかなり見難いです。トラックバック(0)あなたは既にnice!を行っています。一定件数以上前のnice!は表示されませんのでご了承ください。いま、こいつのUSBボードをつかってHOSでUSBってのを考えています。付属サンプルをもとに、GDLでコンパイルできる環境をととのえて、USBの割り込み関数もIRQ5の割り込みに名前を変えることで対応しました。そんでROMに焼きこんだ場合には動作しました。モニタを焼いてRAMに読み込んだ上でUSBを使おうとした場合、Windowsの方でUSBドライバの読み込みに失敗しています。USBの部分以外(LCDやSCI)は無事に動いています。変えないといけないところがあるのでしょうか?もし、何かご存知ならお知らせください。こいつで、近藤のロボットKHR-1のコントローラーを下請けにして、HOSで動くロボットをつくるつもりです。17:25)うーん何とも言えないのですが、H8側のユーザープログラムを起動した上で、Windowsに接続しているんですよね。その逆の場合、接続した時に、直ぐにPNPのネゴシエーションが行われない為に、ドライバが組み込まれないとか。18:49)電源をUSBから供給していたのですが、これがまずいかな?別電源でやってみます。21:46)別電源にし、H8側のソフトを起動してからUSBに接続してみたのですが、おなじ結果でした。秋月のサンプルソフトをそのままつかっているので、アドレスかなんかで再設定をしないといけないのかもしれませんね。15:41)そうですか、残念。私はあのボードのUSB機能を使った事無いので、なんとも対策の出し様が無い。USBを使いたいときはもっぱら、FT232だったりします。20:37)今考えているのは、秋月のサンプルをいじって、デバッグモニタのほうにUSBの初期化をいれてやろうかと考えてます。21:20)miwです、こんにちは。16:09)無理だと思います。やった事は無いのですが、デバックモニタとUSBの初期化プログラムを別々にMOTファイルを作成し、それをエディタでリンクすれば可能かもしれません。それにしても、そんなに大きなサイズの初期化プログラムなんですか?。18:19)秋月のソースそのままなんですが、それだとvprintfとかよびだしているようです。この辺削ってやってみます。21:24)printf族って、そりゃあメモリいっぱい使いますわな。23:22)削って見ました。代わりにそれらしい動きをするのを組み込んで実験してみました。OKさて、あとはRAM焼きでチェック。10:48)ルネサスのデバッグモニタをつかっていて、SCI1の割り込みとかで停止するのは、割り込みベクタテーブルの設定がおかしいからでしょうか?RAMで実行するととまっちゃうのです。09:27)なんらかの割り込みが発生しているのに、有効なベクターアドレスが無いと、デバックモニタは、そこで停止してメッセージを表示します。mapファイルを見て、正しく割り付けされているか確認してみて下さい。11:05)Kさんの本のおまけのCDからVECTOR.Cを引っ張り出してきて、Hewでつくったサンプルは無事うごくようになりました。16:11)え!、GCCでは動いたんですよね。話がごちゃごちゃになって、状況把握が出来なくなっているのではありませんか?。C言語は、作成したプログラムをUNIX上のユーザープロセスとして動くべく開発されたので、CPU固有の割り込みベクターは、サポートされていない訳ですね。それではマイコンでは困るので、ツールベンダーが独自に拡張しています。いう事で、ツールベンダーに依存する処理は、ベンダーの発行するマニュアルをよく読まないと、上手く使えません。HEWのウイザードが出力する割り込みベクターは、絶対アドレスで出力するので、仮想ベクターで割り込みをサポートするデバックモニタとは、相性が悪いのです。mapファイルを確認すれば、思わぬところに、コンテキストがあった筈です。GCCの場合は、アセンブラで外部ラベルのリストを作り、ソース自体はリロケータブルになっていませんでしたか?。デバックモニタの仮想ベクターは、デバックモニタのマニュアルに解説が有ったと思います。16:53)HewでつくったRAM用のmotだと、割込みベクタの設定ができていませんでした。いままではGCCでRAM用motをつくっていたので、設定方法が頭の中からごそっとぬけてました。本をひっぱりだしてきてCD-ROMをみたら、VECTOR.Cというサンプルソースがあったのでそいつをつっこんで、HEWでも割込みベクタの設定ができるようになりました。いまのところHewを使った場合:ROMに焼く:成功デバッグモニタをつかってRAMで実行:成功GCCを使った場合;ROMに焼く:成功デバッグモニタをつかってRAMで実行:Windows側でUSBドライバが読み込めない。その他のSCIやLCDはokといった状況です。バージョンにしているわけですが、GCCのほうではUSBドライバが読み込めないようです。基本的にソースはほぼいじっていないので、理由がわからないです。ステップ実行でI/Oの値とかトレースしてみます。Hewでうごいたので、HewでHOSでのテストをやってもいいんですが。ここのところGCCになれちゃってたので、ちととっつきにくいです。22:14)あ、GCCでうまくいっていないのは、秋月のUSBのサンプルプログラムです。ほかの自作プログラムなんかは問題なく動いてます。22:16)やっとこさ、USBボード+3052Fで、秋月付属のUSBサンプルプログラムが動きました。今日までに、Hewの場合:サンプルをアレンジしたもの:ROM,RAMともOKGCC(GDL)の場合:サンプルをアレンジしたもの:ROM,RAMともOKHOSの場合:アレンジtake1:HewでRAMだめ(ROMはまだためしてない)アレンジtake2:GCCでRAMOK(ROMはまだためしてない)となりました。watson8さんのページにありましたが、USBおそいです。まとめたら、自分のHPに乗っけようとおもってます。23:45)HOS+HEW+RAMで駄目なのは理由が判りませんが、動いて良かったですね。USB1.1が基本的に遅いのか?、Windows側のドライバが遅いのか?、H8が遅いのか?なんだか判りませんが、でもUSB1.1って思ったより早くないですよね。USBシリアルなんかは、明らかにレガシーシリアルの3倍は遅い。H8側も基本的にDMAを使わないと多分遅いのですが、H8のDMAモードとUSB9604のDMAモードが一致しない所が痛い。09:01)ぼくのメインのマシンは、3年ほど前のデスクトップマシンで、こいつのUSBは1.0です。うまく動いたのは去年買ったノートを使う場合で、こいつはUSB2.0です。PCのUSBが原因っぽいです。ノートで作ったmotをデスクトップからHTermをつかっていれても動かなかったです。09:14)そうそう、教材用のオリジナル基板の開発を根回し中なのですが、そのときには、DMA転送ができるUSBの機能もつけようかな。09:16)>そうそう、教材用のオリジナル基板の開発を根回し>中なのですが、おお!、どんな基板なのか興味津々。18:21)こんばんは。押しボタンスイッチモータ接続端子ボリュウム抵抗などをつけて、H8の機能をひととおり使えるようなのを企画中です。22:42)あいかわらずぼちぼちUSBをやってます。柏野さんのuusbd.dllをWin側につかってみたのですが、1.GDLでコンパイルしたサンプルのmotをRAMで使うと、PC側からの書き込みが反映しないけど、USBからPCへの書き込みは成功。Win側でWriteFileは動作してるけどUSB側では反応してないっぽい。2.HewでこんパイルしたサンプルのmotをRAMでつかうと、PCからの読み書きは問題ない。Win側のソフトでUSBをあけたままでH8側をリセットすると、Winがおちちゃうことがある。なんかまだ不安定ですが、秋月のドライバとちがって、きちんとWin側ではReadFileやWriteFileが使えていいですね。Win側はBCBでやっているので、うまくいったらPC側のアクセスはVCLにしてみようと思います。11:00)こんにちは。makefileの方でのライブラリ設定が足りないのでしょうか?自分でつくっちゃってもいいんですが。ところで、memcpyなんかは文字列の初期化ありの宣言でもつかわれるんですねえ。name[]={"test"};とか。13:27)makeの中にこれ”-nostdlib”が入っているとか。つかわれるんですねえ。name[]={"test"};大域変数ならcrtで別の初期化プログラムを呼び出している訳ですが、局所変数の場合は関数に入る度に初期化を行う事となるので、何らかのメモリ操作プログラム、strcpyとかmemcpyとかその類がもろに引っ張られる可能性が有りますね。name[]={"test"};とすれば、呼ばれないような。01:23)おお、”-nostdlib”で標準スタートアップをはずしてるとおもってたんですが、”-nostartfiles”がありましたね。気が付いていませんでした。ありがとうございました。13:38)コメントを書くコメント投稿に失敗しました。未入力の項目があります。認証コードが一致しませんでした。半角英数字のみのコメントは受け付けできません。お名前:[必須]URL:コメント:画像認証:下の画像に表示されている文字を入力してください。※ブログオーナーが承認したコメントのみ表示されます。最近のコメントこんなものでよろしければ。場合..ありがとうございます。Electronicsアットマークエレ不要なデバイスドライバーを削除ダウンロードInterface付属SH2基板のSRAM有り/無しデバックモニタとHOS-V4同梱バージョンHOS本のサンプルをH8/3048Fでデバックする為のデバックモニタH8/3048Fのセクション情報ファイルインポートして使います。