質問: オシロスコープの自作 プローブからの電圧をa/dコンバータで読み込み、それをパソコンに出力するタイプのオシロスコープの自作を試みています。 マイコンには、現在、開発環境の整っている3694fかsh7144を使用したいと思うのですが、これらのマイコンに搭載されているa/dコンバータはスキャン速度が遅く、最大でも分解能3khz程度のオシロしかできないと考えています。 理想的には10mhz程度までの信号を計測したいのですが、何か安価な方法は無いでしょうか。
回答: no.3 tanceです。 なかなか良いadを見つけましたね。これは、名前はクロックでは ありませんが、encodeという端子にクロックを与える必要が あります。 また、データシートを良く読むと解りますが、「最小変換レート」 という仕様があり、20mspsとなっています。つまり、20mspsより 遅くは動作しないのです。 とにかくadは一定レート(例えば40msps)でデータを変換し 続けなければなりません。pcは欲しいときにデータを取り込む という動作になります。(いらない時はデータを捨てる) (クロックを止めると再開に時間がかかる) さて、25nsecの間に入力変化が微小だと仮定すると、これは 信号帯域が10mhzよりはるかに狭いことを意味してしまいます。 25nsecとは10mhzにとっては周期の1/4ですから、まさに0~ピーク に相当します。 1発だけ波形を取るので良いならこの出だし問題は無視して良い かもしれませんが、リアルタイムに波形を出そうとすると 避けて通れません。これはデジタルオシロの宿命です。つまり 通常、波形の横軸はサンプリング間隔よりずっと細かく計測 してやらないと波形がふらふらしてしまうのです。 トリガはソフトで処理できますが、もう少し詳しくお話ししましょう。 取ったデータを常に監視していて、特定の電圧(トリガレベル)を 超えるとか下回るときの瞬間の波形が画面左になるように表示 すれば良いのですが、真のトリガ点の前後のデータを使って 真のトリガ点の本当の時刻を内挿します。とりあえず、直線で 内挿すれば、25nsecの誤差は相当小さくなります。このようにして 求めた真のトリガ点に相当する位置に波形を表示するのです。 決して、クロック周期を単位として考えてはなりません。 ソフト的には多少面倒ですが、これは必須の処理です。本物の デジタルオシロでは精度を上げるために、タイムインターバル 計測を行って、真のトリガ点を測定しています。(高いオシロは) 最近のデジタルオシロの流れは、とにかく大量のデータを長い メモリーに取り込んで、あとでゆっくりソフトで処理して 波形を出す、という方式になってきています。それでも波形を 更新する周期はソフトに依存するので、あまり遅いと波形の 見逃しが増えてデバッグなどには使えないオシロになってしまいます。 難しいと言ってネガティブは回答になってはいけませんが、ただ やってみるという領域を越えて、使えるオシロを作るとなると やはりある程度は面倒なことを覚悟しなくてはなりません。 頑張ってください。