AD8307から取得した電圧値が常に不正確です。出力電圧を上げると取得した電圧値も大きくなるのですが、その値が明らかにおかしく、テスター(万用表)で測定した値とは大きく異なります。テスターの数値は信頼できるものです。原因として何が考えられるでしょうか? もしインピーダンスの問題である場合、AD8307の出力インピーダンス13.2kΩは高すぎるのでしょうか? ADCの設定では最も長いサンプリング周期を使用しましたが、それでも正常な値になりません。
回路図/配線図を送ってください。どのように接続したのか、また実際にどのくらいの電圧が取得できているのか確認させてください。
電圧フォロワを追加して試してみてください。
以前、AD8307を使ってRF電力検出をやっていたとき、まったく同じ罠にはまりました!テスターで出力電圧を測ると安定しているのに、STM32で読み取ると大きくずれていたり、値がばらついたりしました。原因は13.2kΩの出力インピーダンスが高すぎて、STM32のADC入力側でホールドできなかったためです。その後、レール・トゥ・レールのオペアンプを使ってボルテージフォロワを追加したところ、すぐに正確な値が出るようになりました。あなたもこれを試してみてください。
「いいね!」 1
核心は出力インピーダンスの不整合問題です。AD8307の13.2kΩという出力インピーダンスは、STM32のADCにとっては高すぎます。このため、サンプリング時に内部のサンプルコンデンサが完全に充電されず、測定値が正しくなりません。最も簡単な解決策は、AD8307の出力とADCピンの間にボルテージフォロアを追加することです。LMV358やSGM8551などの一般的なオペアンプを使用すれば対応可能です。
「いいね!」 1