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

マイコン独立大作戦
CRTインターフェースボードの製作

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

[第18回]


●水平表示波形

アナログテレビの映像信号はひとつの画面を数百本の水平線に分解した信号で、それを連続して表示することで画像を表示します。
コンポジットビデオ信号は映像信号に水平同期パルスと垂直同期パルスを合わせた信号で、1本の信号線(とGND)だけで表示できるのが最大の特徴です。
下に水平1走査期間の信号波形を示します。


上の波形は[第16回]でお見せした、30年前に「トランジスタ技術」に連載した「つくるパーソナルコンピュータ」の記事の説明図からの引用です。
この信号は昔売られていたモニタディスプレイの信号でNTSC信号とは少し異なっているところがありますが、この当時のモニタディスプレイや家庭用のテレビは信号の許容範囲が割りと広いので多少ズレがあっても問題なく表示できます。
比較参考のためにNTSC信号の波形も示します(上図下側)。
RS-170A NTSCビデオ信号タイミング規格の概要(http://elm-chan.org/docs/rs170a/spec_j.html)を参考にさせていただきました。
上図下側の波形(NTSC)のほうが少し表示期間が長いようですが、家庭用ブラウン管テレビではこの範囲の全部は表示されず、左右がカットされるようです。
上図上側の波形の表示期間はモニタディスプレイでは全範囲が表示されます。
最近のワイドな液晶テレビの場合には左右がカットされずに全体が表示されます。

●ドット表示周波数の決定

それでは上の図を参照しながら具体的な回路の設計について考えていくことにします。
水平に表示する文字数は80字または40字ですが、とりあえずは80字について考えます。
40字表示は80字の半分ということで、80字の回路をもとにして、あとで考えていくことにします。
水平表示期間は上図の上側の波形の45.35μsとします。
そこに80字を表示しますから1文字の表示期間は
45.35/80=0.566875μs
になります。
さらにその1文字は8ドットで構成されますから、1ドットの表示期間は
45.35/640≒0.071μs
約71nsです。
けっこうきびしい数値です。
TTLならばなんとかなりますけれど、気をつけないと遅延時間の影響を受けてしまいそうです。
この0.071の逆数をとると1/0.071=14.085になります。
これがドット表示周波数になります。
約14MHzです。
そこでこの回路では14MHzクリスタルを発振させて、ドット表示周波数としました。

ところでRAMには表示文字コードが入っていて、RAMのアドレスを順に与えていくことでそのアドレスの文字コードが出力されます。
RAMから出力される文字コードデータはROMのアドレスになっていて、ROMからはその文字コードの水平方向8ドット分のデータが出力されます。
そこで14MHzを8分周したクロックをRAMのアドレスとして与え、その結果としてROMから出力される8ドットの表示データをシフトレジスタ74HC166にラッチし、それを14MHzクロックでシフト出力すれば水平方向の8ドットの表示信号が得られます。
これを連続して行なうことで水平方向に連続したドット表示信号が出力されることになります。

しかしそれだけでは画像が流れてしまってまともに表示されません。
上の図で示した波形にしたがった同期信号を作成して表示データに重ねる必要があります。

次回は水平同期信号回路について説明をします。

CRTインターフェースボードの製作[第18回]
2016.9.20upload

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