Z8613を動かす (その4:とりあえず動きました)
いろいろやっているうちに何とか動き始めました。
まずはシリアルポートです。
Z8のシリアルはちょっと変わっていてシリアルのステータスレジスタがありません。それでは受信完了などをどうやって知るのかというと、割り込み要因レジスタを読むのです。ここまではマニュアルを読んでわかっていたのですが...
マニュアルを読み直していると、たとえ割り込みを使わないでポーリング処理をする場合でも一度EI
命令を実行しないと割り込み要因レジスタが有効にならないのだそうです。
ポーリングでやるつもりでマニュアルの割り込みの部分をちゃんと読んでいなかったので気付かなかったのでした。
指示通りに初期化するとあっさり動くようになりました。
パラレルの方はアセンブラが原因でした。
前回書いたようにタイマT0の設定は出来ていました。パラレルポートも試しにプルアップ・プルダウンしながら電圧を測ると出力に設定されているようです。それなのに出力すべきデータが設定できていませんでした。
何が違っているのでしょう?