[新連載]CPLD入門!
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
いつか使うことになるだろうと思ってはいたのですが。
何を今頃になって、というようなものですが。
ようやく本気で、CPLDと四つに取り組みます。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
[第28回]
●7セグメントLED+5×5キーボード回路
以前の回に書きましたように、Z80マイコンボードND80ZSMにはUSBインターフェースも7セグメントLED表示回路もキー入力回路もありません。
もっぱらマイコン独立化セットまたは新マイコン独立化セットと接続して使うことだけを目的に、できるだけローコストになるようにというコンセプトで作ったボードです。
それはそれで意味があることなのですが、実際にさわっていますとやっぱり時にはUSB接続ができるといいなあと思ってしまいます。
かといってUSBインターフェースを外付けにした場合に余りコストがかかってしまうのではもともとのコンセプトに反します。
EPM7032SLC44を使ったPICUSBIF回路を思い立ったのはそういう理由からでした。
もうひとつの理由としてはとりあえず私自身の入門用として小規模なEPM7032が手頃なサイズであったということでもありました。
書いてきましたようにEPM7032SLC44を使ったPICUSBIF回路はとにかく初期の目的に合うものとして作り上げることができたように思います。
これでND80ZSMにUSBIFを外付けすることができるようになりました。
で。
なんだか小出しにしているようですが、ND80ZSMにUSBIFを外付けできるようになってみると、やっぱりND80Z3.5のように7セグメントLEDと5X5キーボードもあったほうがよいのではないか、と思います。
あ、いえ。
順次そのように考えてきたわけではなくて、本当は当初からCPLDを使って、ローコストなUSBIFボードと7セグメントLED+5X5キーボードを作るのが当面の目的でした。
実はその先も考えているのですが、それについてはいずれそのうち書くことにいたします。
5X5キー回路はともかくとして7セグメントLED回路をCPLDで実現するのはいささか重たいのではないか、と薄々予想はしていました。
その予想は見事に的中して、結局試行錯誤を繰り返すこととなってしまったのですが、それは後でのお話です。
下はND80Z3.5の5×5キーの回路です。
四角で囲った部分をEPM7128SLC84の外につければよいだろうと考えました。
つまり四角の外の左側の回路をEPM7128SLC84にプログラムすればよいと考えました。
これはそれほど大した回路とは思いませんでしたので後で作業することにしました。
問題は7セグメントLED表示回路です。
下はND80Z3.5の7セグメントLED表示回路です。
ND80Z3.5は7セグメントLEDのダイナミック表示をDMAによって行なっています。
しかしそれをするためにはBUSRQ信号やBUSAK信号が必要です。
ND80ZSMに限らず、I/O増設用のコネクタにはそんな信号は配置してありません。
それに外付けの回路でDMAをするのもなんだかなあ、という思いもありましたので、ここはシステムモニタの表示プログラムを一部変更して、桁表示アドレスとセグメントデータをOUTすることにして、CPLD内部で8桁分のセグメントデータをラッチして、555の出力パルスを入力することでダイナミック表示をするように考えました。
DMAを使いませんから四角で囲った以外の回路部分とは実際には異なりますが、それに近い動作の回路をCPLD内に作ることになります。
ということでスタートしたのですが大きく分けて2つの点で、当初の計画は根底から変更せざるを得ないこととなってしまいました。
CPLD入門![第28回]
2019.3.31upload
前へ
次へ
ホームページトップへ戻る