AVR:ADCのオーバークロック


8

これはATmega32データシートからの引用です:

By default, the successive approximation circuitry requires an input clock frequency between
50kHz and 200kHz to get maximum resolution. If a lower resolution than 10 bits is needed, the
input clock frequency to the ADC can be higher than 200kHz to get a higher sample rate.

8ビットのADCを使用する予定です。問題は、200kHzよりもどれだけ高いかです。データシートでこれに関する情報を見つけることができませんでした。uCが16MHzで動作している場合、64または32のプリスケーラーを使用して、それぞれ250kHzまたは500kHzでADCを変換エラーなしで実行できますか?そして、ADCを仕様範囲外で実行すると、どのような結果が起こりますか?

回答:


12

ADCの最大周波数は1MHzと指定されています。

実際の問題は正確にはADC自体ではありませんが、ADCの最初の2クロックで入力電圧のサンプルを取得する必要があるサンプルアンドホールドデバイスです。

これらの2つのクロックが2つ短い場合、S / Hのストレージコンデンサは十分な精度で入力信号に追従できません。

ところで、それが最小周波数もある理由です。この場合、変換時間が非常に長いため、変換中にストレージコンデンサを放電できます。

1MHzクロックでは、13usの変換時間または約77kspsを取得します。200kHzクロック-15ksps。


良い答え男+1。内部S&Hをフリーランニングのままにして、より高速な外部S&Hを使用できるかどうかは疑問です。
アンディ、別名

1
@Andyaka-おそらく違います。内部S / Hはハードウェアによってのみ制御されます。多分、変換中に周波数分割器を変更することでハックが可能になるかもしれません-makeは最初の2クロックで遅くなり、それ以降は高くなります...しかし、マニュアルを確認して、それから実験を行う必要があります。
johnfound 2013年

答えてくれてありがとう。8ビットのADCを使用する場合、基本的に1MHzまで安全です。
Ashton H.

@AshtonHearts-はい、そう思います。なぜいくつかのテストをしないのですか?それは単にプログラムの問題です。
johnfound 2013年

2
@AshtonHearts-それはオーバークロックではありません。文書化された動作です。精度が低下するだけです。
johnfound 2013年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.