16ビットマイコンボードの製作
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
いつか使ってみるつもりで入手してそのまま置いてあった16ビットCPUのことを思い出しました。
AMD社のAM188です。
その名の通り、CPUコアは80188互換の16ビットCPUです。
そのAM188を使った16ビットマイコンボードの製作記事です。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
[第58回]
●DATE$,TIME$の実装
このところ書いてきましたAM188(8086も同じ)の命令のクロック数についての問題は、そもそもは86版BASICにDATE$、TIME$を実装するため、RTC(DS1307)との通信プログラムを作成しようとしたことに端を発しています。
DS1307との通信はシリアルで行ないますが、ND80Z3.5などのZB3BASICでは、シリアル通信用のクロックパルス(最低5μsのパルス)をソフトウェアで作り出して、それを利用しています。
同様にして8086版BASICでもソフトウェアで5μsのパルスを作ったのですが、念のために正しく作成できたかどうか、そのパルス幅を確認してみたところ、計算とは全然違うパルス幅が出力されたために今回の問題となりました。
その問題は前回をもってやっとのことで一件落着したのですが、更新履歴を確認してみましたところ、この問題のためになんと10日もかかっておりました。
8086の命令クロックという想定外の問題が発生したために貴重な10日間を費やしてしまいました。
遅れに遅れております予定がまたしてもさらに遅れる結果になってしまいました。
なんとか大車輪で遅れを取り戻さなくてはいけないところなのですが、急ぎのご注文をいただいてしまったこともあって、ホームページの更新が後回しになってしまいます。
毎度のことなのですが、気長なおつきあいをお願いいたします。
ということで、今回は以下のご報告だけで終ります。
今回の見出しにありますように、DS1307との通信パルスの問題がやっと解決しましたので、作成中の8086版BASICにDATE$とTIME$を組込みました。
このところずっと作成を続けてきました86版BASICも細部の検証はまだですが、大体のところは出来上がったと思います。
ただもうあとひとつだけなんとか組み込みたいと考えている機能があります。
次回(およびその次の回)で、その機能について説明をして、それで86版BASICについてはひとまず終了ということにいたします。
その次からはND80KL/86のもうひとつの機能、KL5C80A12についての記事を大急ぎで書いて、なるべく早くND80KL/86組立キットの発売開始につなげたいと考えています。
16ビットマイコンボードの製作[第58回]
2018.7.17upload
前へ
次へ
ホームページトップへ戻る