「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



マイクロファンのarduino互換機に、面白いものが!

http://www.microfan.jp/shop/6_201.html
REDUINO-VALKYRIE168R

まだ発売にはなっていないようですが、以前の
reduino-nanoなどと比べると、様々な点で
arduinoの機能を踏襲しているようですね。

スケッチのアップロード時のオートリセット機能を
登載してるとか、シルクプリントがarduinoのピン配置
になっているとか、オンボードLEDもオリジナルに
したがっているみたい。(TX、RX以外に2つある
見たいだけど…)

そして、ボード上にスイッチが2個登載されている
みたいなので、片方がリセット、片方がユーザー用
なのかな?それとも両方ともユーザー用?

ボード上に可変抵抗が1個あるなぁ。アナログ入力端子
の近くにあるってことは、ボード上のアナログ入力から
簡単にアナログ値が取り込めるっていうことなのかな。
それも便利だな。


それよりも何より面白いのは、ブレッドボードでの使用
に配慮されていて

   入出力ピンが1列に配置されていること。

これは使いやすそうだなぁ。2列になっていると、
どうしても幅が300milほどの太さには収まらない
から、どうしても若干邪魔になるんですが、
1列になっていれば使いやすい!これ頭良いなぁ。


シリアル接続は、USB(FT232RL)タイプか
9ピンシリアルか、どちらかが選べるようですが、
どうせならジャンパーピンかシーソーSWなどで
切り替えて接続できたら便利なんだけどな。

まだ回路は公開になっていない様ですが、以前の
reduino-nanoの時にはシリアル入力ピンがオンボード
のFT232RLにしか接続できないようになっていた
あたり(保護抵抗が挿入されてないので)は
新設計ってことで変わっているんだろうか…

いずれにしても、楽しみなボードだなぁ。

こうなってくると、arduinoとの違いはもはや
「色」くらいかな?名前から言って多分また
赤系になりそうだから。
ま、私的には赤の方が好きですけどね。



コメント ( 2 )




VHDLのお勉強が少し進んだことに気をよくして、
課題だった「CPLDでNTSCカラーコンポジット」
の生成回路を考えてみました。

回路と言っても、いきなりVHDLじゃなくて、
スキームを図にするところから。



こんな感じかな…と。

CPUからの入力信号は垂直同期、水平同期、RGB。

ビデオへの出力はY信号、C信号。

S端子用の信号というわけですが、2つを単純に足し
合わせればコンポジット信号になります。

Y信号は、RGBから作り出す輝度信号と、垂直/水平
同期信号を合成するだけなので、単純に入ってきた信号
から単純な計算でOK。結構単純なprocess文で
できちゃうのではないかと。
まぁ、RGBから輝度に変換する計算式の表現が
少し規模的に懸念?
出力はカラー4ビット、シンクロ1ビットの5ビットで
足りるのでは無いかと。

C信号は2つの信号を含んでいます。burst信号と
sub-carrier信号です。
14.3Mhzで1ラインは910クロックに相当し、
1ライン分は910カウントできればよいから、
10ビットのカウンタを設けます。
burst信号は0度、90度、180度、270度の4パターンを
連続して出力できれば良いので、カウンタを0~3の間で
カウントさせておいておきます。
これらのカウンタは、水平同期でリセットします。

そしてこのカウンタ値を見ながらラインの冒頭で
burst信号を出力、その後はRGB信号の有無によって
sub-carrier信号を生成します。
C信号は、例の↓このページによると
http://www.geocities.jp/kwhr0/hard/pc8001.html
多分4ビットデータで足りるので、4ビットで
出力する方向で考えます。


入出力ピンが合計14本、レジスタが12ビットという
感じなので、これだけなら多分XC9536XLでも
入りきるはずだと思うんだけどなぁ。

というか、できれば8色RGBじゃなく、せめて
RGB各2ビットか3ビット欲しいので、これが
動いたらあとで多色化にも挑戦の予定。
その時に入りきるのかどうか…


そうそう。そもそもY/C分離で出力するんではなく、
完全にコンポジットにしてもいいですよね。
それでも8色出力程度ならレジスタ消費が少し増える
程度じゃないかな。
4~5ビット程度、最大でも9ビット程度?

そうそう。フィールド数をカウントするカウンタは
無いので、4フィールドシーケンスによる縦縞消去は
できません。でも気にしないことにします。
多分問題出るのは白黒テレビだけだろうし。
(カラーでも出るのかな???)
4フィールドシーケンスも実現したい場合は…
何とか頑張ってフィールド数をカウントしてください。


このスキームなら垂直同期信号は全然弄ってないので、
多分インターリーブでもプログレッシブでもどちらも
OKだと思うんですが、確信は持てません。
まぁ、多分大丈夫だけど。


一番厄介なのは、RGB信号とburst信号から作り出す
sub-carrier信号の計算式。8色RGBでさえ
8×4=32パターンあるので、if文が相当
大きくなりそう。入りきるかな?
配列とか上手く使えば可読性は良くできそうだけど、
規模はちょっと???だな。


という感じで作っていって、いずれRGB各2~3
ビットまで拡張すれば、マイコンと繋ぐ範囲では
必要十分じゃないかなぁ。それ以上になると、
マイコン側がRGBの全信号を一度に(1命令で)
出力することはできないだろうし。

ひとまずブレッドボード上で、8色でもいいから
カラーコンポジットが出せるようになれば、あとは
そんなに難しくはないでしょ。

S出力がいいかな?コンポジット出力がいいかな?
どちらにしても、録画やビデオキャプチャには
用は足りるはずなんだけど。



コメント ( 0 )