前回、ブレッドボードに組み上げたCOSMACの回路を動かしてみます。
メモリへのプログラムの書き込みは
- データ入力用の8回路DIPスイッチ
- CPUモード選択用の2つのスライドスイッチ
- 書き込み用のプッシュスイッチ
を使って行います。
CPUモード選択がややこしいのでブレッドボードの横に紙を張り付けました。
前回、ブレッドボードに組み上げたCOSMACの回路を動かしてみます。
メモリへのプログラムの書き込みは
を使って行います。
CPUモード選択がややこしいのでブレッドボードの横に紙を張り付けました。
メモリへの書き込みは以下の手順で行います。
これをブレッドボードの実機で試したところ、左から5つめのLEDが書き込んだ値になりません。0を書き込んでも、点灯したままになったり、その逆のこともあります。オシロスコープでBUS4を確認すると、プルダウンしているにも関わらず、電圧が不定でおかしい動きをしています。またメモリの不良ではと疑いましたが、他のCPUボードで動いていたものなので、もしかしてとCPUを交換してみたところ、この症状がなくなりました。
まずは、動作確認のためにシンプルなプログラムを動かします。CDP1802にはQという端子があり簡単な命令で0/1を出力することができます。
プログラムは以下のようになります。4バイトのコードを先ほどの手順でメモリに書き込みます。
アドレス 命令コード コメント 00 7B 1→Q 01 7A 0→Q 02 30 00 00→R(P).0 プログラムカウンタに0を設定する。
CPUモードをRUNモードにして、Q端子にオシロスコープを接続したところパルス出力を確認しました。
正常に動作しているようですので、次回は他のプログラムも試してみます。
コメントする