Quantcast
Channel: CPU実験室
Browsing latest articles
Browse All 226 View Live

Image may be NSFW.
Clik here to view.

実機確認

デバッグ用のボードでシリアル入出力処理のモジュールが完成したので本来のターゲットであるMCS-85ボードに移植して動作確認をしましたデバッグボードでタイミングも含め充分にバグ出しを終えた1文字出力処理CONOUTです0~255のインクリメントデータをCONOUTに渡すプログラムを8755に焼いてMCS85ボードで実行すると・・・これはひどい。キャラクタは送出されてきますが文字化けでグダグダですしかし...

View Article


Image may be NSFW.
Clik here to view.

実機確認(2)

これはもう、前のオシロ波形で答えわかっちゃてるんですが、要するにROMアクセスにウェイトが挿入されちゃってるのですね。MCS85のチップセットをメーカ推奨回路図どおり配線したので8755のREADY出力と8085のREADY入力は直結しています。8755のデータシートによると8755のROM・I/Oをアクセスすると/CSアクティブから次のCLK立上がりまでREADYがネゲートされるとちゃんと書いてあ...

View Article


Image may be NSFW.
Clik here to view.

モニタ搭載

シリアル通信による1文字入力CONINと1文字出力CONOUTが出来たのでこれらを使ったモニタプログラムをROMに搭載しますはじめデバッグに使ったボードに既に搭載されているモニタのシリアルI/F部分だけ差し替えれば良いと思ってたのですが、あらためてこのモニタのソース、バイナリを見てみるとコードだけで6kバイトワーキングエリアとスタックの確保のためにRAM領域を460バイトも要求する「豪華仕様」でした...

View Article

Image may be NSFW.
Clik here to view.

統合環境組込み

MCS85ボードでプログラムが無事動作することが確認できたので、この後の開発がより簡単になるように統合環境「CMPLDRV」でターゲットとして選択できるように組み込みました。・・・といってもASアセンブラを起動するバッチを呼べるようにしただけですが。フリーエリアが256バイト(実際にはメモリの底からスタックが攻めてくるので220~230バイトくらい)しかコードを置けないのでビルドツールはアセンブラ一...

View Article

Image may be NSFW.
Clik here to view.

こちらもモニタ搭載

MCS-85ボードの方にかかり切りでしたがほぼ動作も確認、開発環境も整備できたので、中途になっていたMCS-51(8031)ボードに戻ってきました。一応メモリ、I/Oアクセスは確認できているのでシリアルが動けばモニタも載せられます。MCS-85ではここら辺が手作りで時間がかかりましたが8031は作例が多く、ハードウェア構成も大体一意に決まるのでそっくり頂いてくることもできます。ここではPaul's...

View Article


Image may be NSFW.
Clik here to view.

8031開発環境

MCS-51(8031)ボードも統合環境CMPLDRVから操作できるようにしました問題なのが通信ボーレートがRS232Cとしては標準的でない値なことですが、ツールのシリアルポート初期化部分でWIN32APIに直接ボーレート31250を与えたらちゃんと設定されました...

View Article

Image may be NSFW.
Clik here to view.

割込みテスト

MCS85ボードで割込みの動作確認をしていきます。割込み要因である8155の/TIMEROUTを74LS04で反転させて8085CPUのハードウェア割込みピンTRAP,RST5.5,RST6.5、RST7.5、INTRのどれかにジャンパ接続できるようにしましたがINTRは外部に8259のような割込みベクタを送出するデバイスがなければならないのでこの選択は不要でした基板上での実装はCPU直近にジャンパ...

View Article

Image may be NSFW.
Clik here to view.

割込みテスト(2)

8155上のRAMで動作する割込みテストの例ですモニタ上でユーザアプリケーションのエントリーポイントはFF00H番地に固定していますのでそこからベクタテーブルを跨いでプログラム本体startに飛びますまず8155内部の14ビットカウンタに最大値3FFHと動作モード3(連続パルス出力)を設定し、タイマをスタートさせます。割込みマスクを解除したあと、Aレジスタの内容をLEDに出力する無限ループに入ります...

View Article


Image may be NSFW.
Clik here to view.

割込みテスト(3)

LEDのチカチカは最下位で75HzになっておりRST7.5の割込みは計算通り150Hzで入っていて正常に動作していると考えられます。RST7.5はうまくいきましたが、RST6.5とRST5.5についても確認してみます。 これらは割込みベクタが違うのはもちろんですが、トリガ条件が異なりRST7.5がエッジセンスだったのに対し...

View Article


Image may be NSFW.
Clik here to view.

割込みテスト(4)

割込みパルスは入力されているのにめったに割込みがかからない、というか正確に10回に1回しか受付けていない状況ですが これはもう早い話がパルス幅が狭すぎてレベル割込みに必要な幅に不足しているということです インテルのMCS-80/85 FAMILY USER'S...

View Article
Browsing latest articles
Browse All 226 View Live