2022年6月15日水曜日

白窓君基板の改修

TNB製作所がリリースしてる白窓君の基板を私が供給しているのは、知る人ぞ知るところ。
オリジナルの回路は たんぼさんが書いたものですから、
私はコッソリと裏方に徹しています。

そんな流れでリリースが続いている白窓君ですが、
某氏のハードの影響で需要が増加してしまった模様。
そろそろ打ち止めか?と思っていたところ、また注文が増えてきた感じ。

追加分の基板を作るタイミングで、改版も行うことにしました。
ここにそれを書いて誰得?という疑問も有りますが・・・・・(笑)

実は白窓君の回路、潜在的な問題点を抱えてました。
それは、

白窓君内のLCDユニットのデーター線で、
コンフリクトが起きる可能性が有るという問題

ジョイスティックポートの各端子にはプルアップ抵抗が付いているので、
通常はHレベルになっています。

これに白窓君を繋ぐと、LCDユニットのR/W信号がHレベルになるわけで、
何かの拍子にE信号が動くとLCDユニットのデーター端子から、
出力が出てくる事態になっちゃうわけです。

現在頒布されてる白窓君はX68本体とLCDユニットの間に
バッファーICが挿入されています。
上記の症状が発生するとバッファーICの出力とLCDユニットの出力が
ぶつかることになるんですね。
(ちなみにオリジナルの回路だとバッファーICが入っていないので、
X68本体とLCDユニットの出力がぶつかることになります。)

LCDユニットの信号端子をそのままケーブルで外に引き出すのはナンセンスなので、
バッファーICの挿入は不可欠。
そこで今回の改版で、LCDユニットのR/Wピンは常にLレベルに固定する様にしました。
更にX68本体側からのR/W信号にてバッファーICの出力制御を行い、
R/W信号=Hレベルの時はバッファー出力=ハイインピータンスになります。

ここまでやればコンフリクト対策としては完全かと。

双方向バッファーICを使い、X68側からLCDユニットの読み書きを行える回路も
検討したのですが、そもそもジョイスティックB端子を使う限り、
LCDユニットからの読み込みは不可能なんですね。
もし読み込みを行おうとしたら、
制御線は出力、データー線は入力に設定する必要があるわけですが、
ジョイスティックBはこの設定が不可能なのです。

白窓君をジョイスティックAに繋いで使う人は居ないでしょうから、
読み込み機能は搭載してもムダという結論になりました。

0 件のコメント:

コメントを投稿