USB-シリアル変換モジュール(AE-UM232R 秋月電子)を使用して、Z80との
通信ができるようにします。
まず、シリアル通信用のクロック源ですが、2つ通りの方法があります。
一つ目は、メインクロックを分周する方法です。この方法だと発振器はひとつで済みますが
周波数が、中途半端な周波数になり、タイマーなどの分周に苦労しそうです(たぶん^^;)
もう一つは、専用のクロック源を与えることです。メインクロックは自由度があがります。
ただコスト的には、割高になります^^;量産品ではないので、今回はこの方法で行ってみます。
メインクロックとシリアル通信用の外部クロック源には次のような制約があります。
外部クロック源<メインクロック÷40
また、外部クロック源と必要なサンプリングレートの関係は
外部クロック÷16 または 外部クロック÷64の関係となります。
(この÷16または÷64の分周設定は内部レジスターの設定となり、ソフト的に行います)
例えば、サンプリングレートを 38400pbsとし、分周比を ÷16に設定する場合
外部クロックは、614.4KHz (38.4K ×16)ハード的にCKA0端子(50pin)に与えます
メインクロックは 24.576MHz( 0.6144MHz×40)以上の発振器が必要になります。
サンプリングレート 9600pbs、16分周では
外部クロックは、153.6KHz ハード的にCKA0端子(50pin)に与えます
メインクロックは 6.144MHz以上となります。
今回の回路では、外部クロックの原発振を4.9152MHzとし、74HC4040にて1/8分周し
614.4KHzを得ています。
発振器としては、SG-8002DC(5V仕様)発振モジュール(秋月電子)を使用しました。
なお、Z8S180とUSB-シリアル変換モジュール間は、ハードウエアフロー制御は行わず、
ただ単にRXとTXを接続しているだけです。
また、USB-シリアル変換モジュールは外部5Vで動作するようにジャンパーを設定しています。
J2は、オープン(USBからの5V電源は使用しない)
J1は、2-3間ショート(VCCからの電源を使用する。5V動作)
回路図は下記の通りです。