WR-X A/Dは、1回目であっさり動作した(^Θ^)ノ
CPU module(手前)とA/D module(奥)をカラフルなフラットケーブルで接続して動作させているところ
細かいノイズなんかがどういう具合かとかは、実際に高い周波数のものをA/Dさせて、PCにデータを送ってみないとわからないが、とりあえずファンクションジェネレータからの入力電圧変化でちゃんとLEDが4段階に変化しているので、A/D変換自体は問題なく動いているのが確認できた。
LEDのON,OFFをオシロスコープで見たところ
↑は2つのLEDのON,OFF信号をオシロスコープで見たところ。
ファンクションジェネレータからは340HzくらいのSin波を与えている。
2ビットで信号の大きさを表示させているのだが、2ch(下)が0ビット目、1ch(上)が1ビット目になっている。
これを2進数で読むと、ちゃんと0→1→2→3→2→1→0→1→2→・・・と変化している。つまり、ちゃんとA/Dできているということだ。
入力信号とA/DのMSBとの変化
↑今度は入力のアナログ信号(Sin波)とA/DのMSBとを同時に見てみる。ちゃんとうまい具合に2値変換ができている。(実際には12ビットだが、このオシロは2chなので、これ以上は同時に見ることはできない。こんな感じで、多チャンネルオシロが欲しくなるわけだ。)
しかしちゃんと動くもんなんだなw
このA/D変換ICはSPIという双方向シリアル通信を行ってデータの取得なんかをするタイプなんだが、そのためにFPGA内のVerilogでは、シリアル通信を行う回路をプログラムした。
CPUとのインターフェース、内部のレジスタ、割り込み制御、そしてA/D変換ICとのシリアルインターフェースと、結構複雑なことをやってるんで、それらがちゃんと全部連携を取ってうまく動かないとダメなんだが、いきなりちゃんとA/Dしているんで、結構感動した。
次はVisionだが、Visionの場合はデータを取得後、PCに送信しないとわからないため、その辺の通信ライブラリも作らなくてはいけないので、少し時間がかかるな。
P.S.
昨日の大福ぬこは今日の昼に旅立ちました・・・
やはりここまで小さな幼ぬこは難しいね・・・
VIPPERが描いた絵
州*‘ o‘リ<ハァ・・・ハァ・・・たまらんね 波形は・・・