わさびぃさん、こんにちは。 CPU基板は自作(ハンドメイド)されているのでしょうか? 電源リセット回路やクリスタルの異常発振など色々と問題えお抱 えておられるようですが、デバッグされる場合のアドバイスを少し。 (他の方と重複する部分もありますがご容赦ください) ●CPUの基本回路 私はH8については秋月のH8/3068F、H8/3664しか使った経験が ないのですが、リセット端子やNMI端子の処理、発振回路などの CPUの基本的なハード部分に関しては、そこに添付された回路図 を参考にされるか、トラ技などでのH8特集記事を参考にすれば、 先ず間違いなく動作すると思います。ネットで検索しても良いかも。 ●電源リセット 一般にはCRとダイオードによるパワーオン・リセット回路でも十分 かと思いますが、部品のばらつきや経年的な定数の変化、及び 外付けメモリに対する書き込み保護等を考慮すると、やはり専用の リセットIC(電圧監視IC)をお勧めします。 これは小信号トランジスタ程度の大きさで場所も取らずCRとDiの 他にはバッファICなどの部品も必要ありません。 特に重要なのがリセット電圧(スレッショルド電圧)がICによって明 確に保証されている点です。 今は電源投入時だけを考慮されているようですが、実際の回路で は何らかの原因で電圧低下(瞬低)が発生することもありえますの で、CRとダイオードによるパワーオンリセットでは不確実です。 ●発振回路と周波数 H8/3068-ONEは電源電圧レベルによって最大動作周波数が決め られているかと思います。電圧については大丈夫でしょうか? 他の方もご指摘になっておられますが、クリスタルによる自励発振 を行う場合は最短距離で端子と結ぶ必要があります。 この端子の電圧レベルはアナログですから、特に注意が必要です。 また、クリスタルにはオーバートーン仕様のものとそうでないものも ありますので、CPU側の仕様と一致しているかどうか良く確認される ことをお勧めします。 CPUを交換できればCPU側の問題かクリスタル側の問題かがはっ きりするのですが・・・ どうしても周波数の問題が解決しないなら、専用のクリスタルオシレ ータを使用されることをお勧めします。基本周波数が確定しない、ま たは不安定であるとCPUのリセットシーケンスが満足されません。 ●デバッグの基本的な考え方 私の経験的なもので恐縮ですが、基本的な考え方は「回路をできる だけシンプルな状態にすること」です。 動作チェックに不必要なデバイスや回路はできるだけ外します。 今回の場合では外付けのメモリを外し、もし回路的にモード7の状態 にできるならその状態でICEによって基本的な動作チェック、及びサ ンプルプログラムを走らせて確認、更にICEを外してCPU単独での動 作チェックをするのが良いと思われます。 モード7で使用できるモニタプログラムが日立や秋月等で入手できます からこれを使ってみるのも良いと思います。大抵の場合はこれで先ず 間に合うはずです。(良くできていますよ) お使いのICEはH8のオンチップデバッガですから問題は少ないと思い ますが、ソケットタイプでプローブ側のエミュレーションメモリを使うタイ プの高級(?)ICEでは、「ICEでは動作するが単独では動作しない」「ICE を外すと暴走する」と言うことが多々あります。 もう一つは、ハードの根本的なデバッグは必ずアセンブラで行うことを お勧めします。未だ基本動作が不確実な状態でCなどで動作チェック をしても問題が複雑化するだけであまり良い方法とは言えません。 問題が起きて何かを変更・修正する場合の鉄則は「一度に2つ以上 の変更をしない」「何も信じないこと(思い込まない)」ことです。 面倒で遠回りにはなりますが、複数の変更・修正を同時に実施してそ の問題が解決しない場合は、更に迷路に入り込むことになります。 鈴木