Articles
Note: AREFピンの外部基準電圧は5V以上または0V以下であってはなりません。
注意: もしボードの性能より高い分解能ビットが指定された場合、Arduinoは余分なビットをゼロで埋め合わせます。
Arduino analogRead ( )
On 10月 31, 2021 by adminanalogRead( )関数は、特定のArduinoボードに存在する指定したアナログピンから値を読み込みます。
Arduinoボード上のADC(アナログからデジタル変換)はマルチチャンネル変換器です。 入力電圧と動作電圧を0~1023の値で対応付けます。 動作電圧は5Vまたは3.3Vです。
0~1023の値は整数値です。 0から(2^10)-1と書くこともできます。
ボード(UNO、Mega、Mini、Nano)でアナログ入力信号を読み取る時間は、約100マイクロ秒または0.0001秒です。
したがって、アナログ入力の最大読み取りレートは1秒間に約10000回です。
いくつかのArduinoボードの動作電圧と分解能について説明します。
- Arduino UNO, Mini, Mega, Nano, Leonardo, Microの動作電圧は5Vで、分解能は10ビットです。
- MKRファミリーボード、Arduino Due、Zeroの動作電圧は3Vで、分解能は12ビットです。
入力電圧と分解能の変更
- 特定のボードで、analogReference()関数を使って入力電圧を変更することが可能です。
analogReference( )
アナログ入力に使用する基準電圧は、analogReference( )で設定します。
構文は次のとおりです:
Note: AREFピンの外部基準電圧は5V以上または0V以下であってはなりません。
さもないと、Arduinoボード上のマイクロコントローラーを損傷する可能性があります。
- analogReadResolution()関数を使用して、MKRファミリー、Zero、Dueボードに対してのみ、分解能を変更することができます。
analogReadResolution( )
MKRファミリー、Zero、DueのADC分解能は12ビットです。
analogReadResolution( )は、analogRead( ) 関数の0から4095までのインテージャー値を返す。
構文は、
where,
bits: analogRead()関数から返される分解能のビットを意味します。
注意: もしボードの性能より高い分解能ビットが指定された場合、Arduinoは余分なビットをゼロで埋め合わせます。
例えばanalogReadResolution (14)
上記の関数は最初の二つの12ビット(これはADC読み取りも含む)と最後の二つのビットをパッドした14ビット近似数値を出します。
analogRead ()のシンタックス
シンタックスは次のとおりです。
pin: 読み込む特定のアナログピンの名前が含まれています。
コード例
例を使って、analogReadの概念を理解しましょう:
上記のコードは、指定したアナログピン(AnaPin)から電圧を読み取り、それを表示します。
コメントを残す