個人的には、私は経験則の大したファンではありませんが、例外としても非常に正確ないくつかのルールがあります。
これらのルールの1つは次のとおりです。
マイクロコントローラADC周辺機器は常にひどいです。
常に。 あなたがただディレーティングするようなひどいものではありません。シャワーで胎児の位置で泣いているようなひどいもの。
私は子供ですが、ほんの少しだけです。あなたの質問に答えるには、はい、ADCは実際にはそれほど悪いので、はい、受け入れる必要があります。「動作条件が適用されます」という大きな免責事項に注意してください。データシート。
MCUなどの特定の部品については、データシートもマーケティング資料であり、MCUは通常、周辺機器または消費電力(またはその両方)で競合することを覚えておく必要があります。したがって、ADCなどの数値は、技術的にはばかげて非現実的な同じ状況下でADCを使用している限り、データシートの測定を行いました。私がよく目にするお気に入りは、他のすべてのペリフェラルでENOBを測定することと、ディープスリープで完全に電源が切られた実際のプロセッサコアです。もう1つは、重要なソフトウェア後処理と、オーバーサンプリングなどの同様の手法を使用して測定値を取得することです。ADCの仕様が「これが実現できる最高の方法であり、管理方法を教えてくれるかどうかさえわからない」というMCUデータシートを見たことがないと思います。 「これは、ソフトウェアで信号をクリーンアップする前の仕様です」。
そして、明確にするために、少なくとも他のすべての恐ろしいMCU ADCと比較して、この部分にはかなり良いADCがあるように思えます。8.5ビット?そんな贅沢!だからブルジョワ!時間のほとんどは、あなたが取得します多分 MCUでの10ビットADCから6ビットを。彼らが12ビットの解像度と言うとき、彼らはどこかのレジスタから読み取ることができる12ビットがあることを意味することを覚えておいてください。それらが12ビットの無駄なノイズにならないという意味はありません。唯一の約束は、12ビットの何かがあることです。
さて、この時点で、これらのアナログ周辺機器が常にこれほどひどいものであることに少し懐疑的かもしれません。少なくとも、一部のチップ会社が中途半端なアナログフロントエンドを備えたMCUを単にリリースしないのではないかと疑問に思うかもしれません。
まあ、それはできません。参照が実際にどれほど優れているかは関係ありません。安定性の問題ではありません。それはノイズです。そして物理学。
MCUと同じシリコンダイ上に高性能(または実際には平凡な性能)のADCを作成することは、物理的に不可能です。そして、アナログ性能を台無しにするのに必要なのは1つだけです。この場合、1つはありませんが複数あります。
まず、1つのCMOSトランジスタスイッチングですべての種類の高調波とノイズを直接、すべてにダンプし、スイッチングするとすべてに結合します(ご想像のとおり)。私たちはCMOSを低電力であると考えがちですが(実際はそうです)、トランジスタが状態を変更しているときを除いて、CMOS が使用する電力は事実上ゼロであることを覚えておく価値があります。そして、それらは数十から数百ピコ秒のオーダーで非常に速く状態を変化させます。あなたは十ミリアンペアを取るときに消費本質的に静的な消費電力は、現在は完全に強烈になっているすべてのことを、文字通りの電流スパイク100PSことを何かで消費されている数百万人の小さな小さなのできそこないをスイッチ、全体としての切り替え...まあ、それは物事を少しリフレームする必要があります。これらの数ミリアンペアは、少なくともアナログ関連では、見た目よりもはるかに不吉です。低電力≠低ノイズ。CMOSは、切り替えるための電力しか必要としないため、低電力です。しかし、それはダブステップのバスドロップよりもハードに切り替わります。
これらのスパイクはすべて、基板、ADCが共有する基板、およびデジタル回路には無意味ですが、実際にはアナログ回路にとって非常に厄介な基板内の局所的なグランドバウンスを引き起こすのに十分な抵抗性を突き抜ける必要があります。
そして、それを回避する方法は本当にありません。それはただ一つの問題です。もう1つは、MCUと共存できる高性能アナログレイアウトを作成することは実際には物理的に不可能であり、これらのピンをGPIOとしても使用する必要があり、適切なアナログセクションの可能性を致命的に妨害するその他の考慮事項です。レイアウト。
現在は、ADCがいくらか改善されたいくつかの特殊なMCUがあり、実際には2つの完全に分離したシリコンダイを1つのパッケージに収め、ボンドワイヤで接続することでこれを実現し、基板の絶縁を実現しています。ただし、この機能には料金がかかりますが、近接性が非常に高いため、結果は専用ADCよりも劣ります。
ああ、私はこれがすべてあなたがアナログとデジタルセクションに関連するすべての方法で完璧な外部レイアウトと接地とデカップリングの状況を持っていると仮定する方法にさえ触れていません。それだけでは重要ではありません。ヘンリーオットに聞いてください。
つまり、結論として、あなたのチップ上のADCは本当にひどいものだと思います。他のすべてのMCU ADCとまったく同じです。ごめんなさい。それは十分である-そして多くの多くのアプリケーション(かなり賢いソフトウェアソース ry-しゃれで支援されている)にとって-それはそうです。賢い限り、アナログパフォーマンスが低くても実際に何ができるのかは驚くべきことです。しかし、賢いのはここまでしかあなたを運ぶことができません。冷たくてハードな有効ビット数が必要な場合は、本当に弾丸をかみ、注意深いPCBレイアウトとデカップリングとともに専用ADCを使用するか、より特殊な部品(マルチダイパッケージなど)を使用する必要があります。