うまく映らなかった件。
DACの抵抗、やっぱり間違えてました。
最上位に一番大きい抵抗が、最下位に一番小さい
抵抗が挿さってました。アホですな。
入れ替えてみて、いざ表示!
こんな感じ。
左から白、黄色、水色…と言いたいところなんですが、
やっぱり色が出ないなぁ。それに、赤と青に相当する
ところに輝度が全く載ってない…
シンクロは完全にあっているんだけどな。
なんで赤と青のところだけ抜けちゃうんだろう?
そしてC信号がちゃんと出ないんだろう?
あと、縮小画像ではわかりにくいので部分的に切り
取ったクローズアップ画像を。
こんな感じ。どうやら、C信号自体は出ているようで、
色ではなく「縦の縞々」という形で現れています。
なので、C信号の線を抜いちゃうと↓こんな感じ。
縦線がすっかり消えて、綺麗な白黒映像になっています。
ということは、tiny2313の出力信号はおおよそ
ビデオ信号の規格に合っていて、しかもCPLD上
で動いているVHDLの中身もある程度機能して
いると考えて良さそうですが…
C信号が機能していない理由を調べないとな…。
特に、カラーバースト信号が活きてないのが
気になるなぁ。
14.318Mhzで4個分のデータ出力…つまり3.58Mhzの
波が出ていないのかな?と思って確かめてみると、
とりあえず縞々の密度から計算してみるとピッタリ
3.58Mhz。CPLD用のクロック回路には問題ない
みたい。
出力タイミングのズレか何かなのなぁ?
なんだろうなぁ…
ひとまずY信号が出るようになったのはいいんだけど、
1歩進んだら袋小路だった…なんてことじゃなければ
良いんだけどな…
カラーバースト信号さえ生きていれば、なんらかの
色が出ているはずなんだけどな…。映像を見るに
3.58Mhzのサブキャリア信号は出ているみたい
だから、バースト信号さえ活きていればなんらかの
色が出るはずなんだけどな。
C信号にLPFか何かを通さないといけないのかな?
だとすると、一旦アンプを通してインピーダンス
変換をしないといけないだろうから面倒だな。
そういえば1点。既にわかっているVHDL上の
バグがあったなぁ。まさにバースト信号関係なん
ですが…。
水平同期信号のタイミングを基準に10ビットカウンタ
をリセットしているので、各ラインの先頭では
これを基準にバースト信号を出力されることに
なるわけですが、一方、水平同期信号が存在して
いない時には10ビットカウンタがオーバーラップ
する毎に勝手にバースト信号が出力されてしまいます。
具体的には、垂直同期期間に意図しないタイミング
でカラーバースト信号が出てしまうということに
なります。
この点については訂正方法を既に考えてあるん
だけど、でもこれが直接悪さしているとは思え
ないんだけどなぁ…
あと、細かいことを言えば垂直同期期間の直後
の約20本程度にもカラーバーストが載っている
んですが(本来は水平同期信号のみ)、これも
悪さするとは思えないんだけどなぁ…
目下、TINY2313が吐き出す水平同期信号は64.3Mhz
(シミュレータ上の計算による)なんですが、
これがいけないのかな?
うーん、何が原因か良くわからん。
CXA1645でも使ってTINY2313用に作ったプログラム
がRGBからコンポジットにちゃんと変換できる
のか、いっぺん試してみようかな?
|