analogReadResolution()



Açıklama

analogReadResolution (), Arduino Due, Zero ve MKR Ailesi için Analog API'nin bir uzantısıdır.

analogRead() tarafından döndürülen değerin boyutunu (bit analogRead() . AVR tabanlı kartlarla geriye dönük uyumluluk için varsayılan olarak 10 bittir (0-1023 arasındaki değerleri döndürür).

Due, Zero ve MKR Ailesi kartlarında çözünürlük 12 olarak değiştirilerek erişilebilen 12 bitlik ADC özellikleri bulunur. Bu, analogRead() den 0 ile 4095 arasında değerler döndürür.

Sözdizimi

analogReadResolution(bits)

Parametreler

bits : analogRead() işlevi tarafından döndürülen değerin çözünürlüğünü (bit analogRead() . Bunu 1 ile 32 arasında ayarlayabilirsiniz. 12'den yüksek çözünürlükler ayarlayabilirsiniz, ancak analogRead() tarafından döndürülen değerler yaklaşık olarak analogRead() . Ayrıntılar için aşağıdaki nota bakın.

İadeler

Hiçbir şey değil

Örnek Kod

Kod, ADC'nin farklı çözünürlüklerde nasıl kullanılacağını gösterir.

void setup() {
  // open a serial connection
  Serial.begin(9600);
}

void loop() {
  // read the input on A0 at default resolution (10 bits)
  // and send it out the serial connection
  analogReadResolution(10);
  Serial.print("ADC 10-bit (default) : ");
  Serial.print(analogRead(A0));

  // change the resolution to 12 bits and read A0
  analogReadResolution(12);
  Serial.print(", 12-bit : ");
  Serial.print(analogRead(A0));

  // change the resolution to 16 bits and read A0
  analogReadResolution(16);
  Serial.print(", 16-bit : ");
  Serial.print(analogRead(A0));

  // change the resolution to 8 bits and read A0
  analogReadResolution(8);
  Serial.print(", 8-bit : ");
  Serial.println(analogRead(A0));

  // a little delay to not hog Serial Monitor
  delay(100);
}

Notlar ve Uyarılar

analogReadResolution() değerini kartınızın özelliklerinden daha yüksek bir değere ayarlarsanız, Arduino yalnızca en yüksek çözünürlükte rapor eder ve ekstra bitleri sıfırlarla doldurur.

Örneğin: Due ile analogReadResolution(16) , gerçek ADC okumasını içeren ilk 12 bit ve sıfırlarla doldurulmuş son 4 bit ile yaklaşık 16 bitlik bir sayı verecektir.

analogReadResolution() değerini kartınızın özelliklerinden daha düşük bir değere ayarlarsanız, analogReadResolution() okunan en az önemli bitler atılır .

16 bit çözünürlük (veya gerçek donanım özelliklerinden daha yüksek herhangi bir çözünürlük) kullanmak, kod satırını değiştirmeden gelecekteki kartlarda kullanılabilir hale geldiğinde daha yüksek çözünürlüklü ADC'ye sahip aygıtları otomatik olarak işleyen çizimler yazmanıza olanak tanır.

Ayrıca Bakınız

LANGUAGE analogRead()