次に、実際のマイコンで考えてみましょう。STM32F4に搭載されている12ビット分解能のA-Dコンバーターは定電圧源のVREFINTを持っていて、1つの測定チャンネルが割り当てられています(図4)。
ユーザーは外部チャンネルを利用して、端子の電圧をA-Dコンバーターで変換することができますが、同様に内部チャンネルの電圧源も測定することができます。
内部チャンネルには、具体的には、次の3つがあります。
温度センサーやVBATの電圧は変動しますが、VREFINTの電圧値は一定値で、各製品のデータシートに記載されています。STM32F412の場合は、1.21V(標準値)です。測定電圧が既知の値であれば、式3から逆算した次の式で、参照電圧を求めることができます。
参照電圧=((2N-1)÷A-Dコンバーターの変換結果)×測定電圧 式4
例えば、VREFINTを変換した時の結果が1638だとします。Nは12なので、これらを式4に代入します。
参照電圧=(4095÷1638)×1.21V=3.025V
よって、参照電圧は3.025Vであることが分かります。VDDAを知りたい場合は、VDDAとVREF+を接続して同電位にしておけば、VREF+の値からVDDAも求められます。
STM32F4の場合、参照電圧VREF+とアナログ電源のVDDAが分離されている製品と、VDDAとVREF+が共有端子になっている製品があるので、製品の仕様をよく確認し、必要に応じて外部の配線を施します。
Copyright © ITmedia, Inc. All Rights Reserved.