2017.2.17
前へ
次へ
ホームページトップへ戻る

マイコン独立大作戦
CRT/VGAIF+KEYIF+SDCARDIFボードの製作

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
WindowsパソコンにUSB接続して使う現行方式はそれなりに便利ではありますが、ときとしてWindows
のしがらみから開放されて、小さいながらも独立した一個のパソコンとして機能したいと思うこともあります。
昔はそれが普通のことだったのですが、安価なCRTディスプレイが生産中止となって久しい今日ではそれ
は叶わぬことと諦めていたのですが…。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

[総合第10回]


●HSYNC回路(2)

前回からの続きです。
前回はHSYNC信号回路の説明をしたところで終ってしまいました。
前回お見せした回路図を見ながら説明しますので、その回路図を下に再掲します。

前回と今回はHSYNC信号について説明するのが主目的なのですが、ことのついでですのでHBLANK信号についても書いておきます。
HBLANK信号はもともとはブラウン管ディスプレイで電子銃が画面を左から右に走査して、そこからまた左端に戻る期間中は画面を表示させないためのものだったのですが、液晶ディスプレイではその必要はなくなりました。
ですが以前のブラウン管ディスプレイの時代からの互換性を維持するために以前からの規格のままブランキング信号も残っています。
HBLANK信号の立ち上がりが画面左端で立下りが画面右端になります。
前回説明しましたように、水平方向の1走査期間を8×8ドットのキャラクタ文字数で示すと、80字×25行(640ドット×200ドット)モードでは、表示期間とブランキング期間を合わせて100字になります。
画面の左端の文字アドレスを00とした場合右端が4FHで50Hから63Hまでがブランキング期間になります。
これを図で示すと下のようになります。

HBLANK信号の立下りからHSYNCが立ち下がるまでがフロントポーチでHSYNC信号の立ち上がりからHBLANK信号が立ち上がるまでがバックポーチです。
HSYNC信号に比べるとHBLANK信号の回路は簡単で、74HC11(IC15)によって50H〜5FHの期間中Hになるパルスを作って74HC74(IC16)のクロックとして与えることでHBLANK信号を出力します。
ここは2入力ANDでよいのですが、3入力ANDが余っているのでそれを使っています。
カウンタ出力回路の信号の遅れによって文字表示の途中がブランキング信号にかかってしまうのを避けるために、フリップフロップを2段使って文字表示と同期を取っています。

さて前回と今回長々と回路の説明をしてきましたわけは、表示キャラクタの一部の縦線が太く表示されてしまうことへの対策について説明するためです。
色々調べても原因がわからず、あてずっぽうで200pF程度のコンデンサを回路のあちこちに当ててみましたら、太く表示される位置が移動するところがみつかりました。
それは上の回路図の74HC393(IC3)のpin5でした。
その時点ではVRは入っていませんでした。
この出力信号はHSYNCの出力タイミングに関係しています。

考えてみればありそうなことで、液晶画面にずらりと並んだ表示素子のどこを水平方向の表示原点とするかは、どうやらHSYNC信号のおそらく立ち上がりエッジからの距離で決定されているらしいという推測がなりたちます。
こちらではHBLANK信号の立ち上がりはHSYNC信号の立ち上がりからちょうどきっちり6文字(48ドット)のところで、そこが表示開始点なのですが、特に画素数が多くて640ドットで割り切れないディスプレイでは、その点が画素の並びと一致するとは限りません。
むしろ個々のディスプレイによって、それぞれずれてしまうと考えるほうが自然かも知れません。

いろいろな値のコンデンサをとっかえひっかえつけてみては表示の状態を確認する作業はなかなかに面倒で根気と時間が要る作業でした。
DELLのディスプレイでちょうどいい表示になるように調整して決めたコンデンサがEPSONのディスプレイでは全く役に立たず、また調整をやり直す、という作業を延々と続けることになってしまいました。
結局のところいろいろなディスプレイにぴったり合うような値のコンデンサを特定することは無理という結論にいたりました。
するとトリマコンデンサということになりますが、試行錯誤の過程で得られたコンデンサの値の範囲を全てカバーできるようなトリマコンデンサはちょっと無さそうです。

さて、どうするか。
しばし思案投げ首状態だったのですが、ああそうか、突然解決策が浮かびました。
おそらく信号の遅れ時間に関係しているとするなら、何もコンデンサでなくてもよいじゃありませんか。
信号を遅延させるなら、教科書通りのRC回路でいけるはず。
74HCの出力回路に直接100〜300pF程度のコンデンサを入れるだけで調整ができるということから考えるとRを入れるならコンデンサの値はそれよりもうんと小さい値になるはず。
ひょっとすると浮遊容量でも十分では?
ということで上の回路のように5KΩのトリマ抵抗を回路に直列に入れるだけで太くなる位置を一文字幅以上も移動させることができました。
しかしこの調整はちょっとクリチカルで一度固定すれば安定しますが最適なポイントをみつけるのには慎重を要します。
水平1280ドットのようにちょうど640ドットの倍の画素数のディスプレイはまだしも、DELLの2007FPbのように1600ドットの画素数のデイスプレイの場合、ちょうどよい位置をみつけるのはちょいとむつかしいです。
ほとんどのキャラクタが左端の1ドットが空きになっていますから、その近辺に太い表示位置を追い込むのが現実的な解決策になると思います。

今回はデジタル化された液晶ディスプレイだからこその問題だったということになりそうです。
昔のブラウン管ディスプレイではこういう問題はまず発生しないと思います。
一般にはデジタルのほうが精度が高いと思われ勝ちですが、意外なところでアナログの優位性を再認識させられることがよくあります。
近年では往年のレコードが復権しつつあるようですし、テレビもデジタルのほうがアナログよりも映像が鮮明という宣伝が一般に行なわれているようですけれど、ほんとうは昔からのRCA方式のほうがきれいなのだそうですね。
まあデジタルはどこまでいっても階段状のぎざぎざをなくしてなめらかにすることはできないのですよね。
おお、そうでした。
ずっと愛用してきたソニーテクトロのオシロスコープが壊れてしまって、やむなくデジタルオシロ(同じソニーテクトロ製)にしたのですが、ときどきいらいらさせられております。
ことオシロスコープに限っていえば、断然アナログがよいですねえ。

次回に続きます。

CRT/VGAIF+KEYIF+SDCARDIFボードの製作[総合第10回]
2017.2.17upload

前へ
次へ
ホームページトップへ戻る