analogRead()

[Analog I/O]

Açıklama

Belirlenen analog pinin değerini okur arduino kartları çoklu bağlantıyı destekler ve analogdan dijitale 10-bit lik dönüştürücü içerir. 0 ile çalışma voltajı(5V veya 3.3V) arasındaki giriş voltajlarını 0 ile 1023 arasındaki tam sayı değerlerine eşitleyeceği anlamına gelir. Örneğin,bir Arduino UNO'da bu, okumalar için bir değer verir: 5 volt / 1024 birim veya, birim başına 0,0049 volt (4.9mV.) Bazı Arduino kartları için kullanılabilir pinler, çalışma voltajı ve maksimum çözünürlük için aşağıdaki tabloya bakın.

Giriş aralığı analogReferance() kullanılarak değiştirilebilir, çözünürlük ise analogReadResolution() kullanılarak değiştirilebilir.(yalnızca Zero, Due ve MKR kartları için geçerlidir)

ATmega tabanlı kartlarda (UNO, Nano, Mini,Mega) bir analog girişi okumak yaklaşık 100 mikrosanyie (0.0001 s) sürer, bu nedenle maksimum okuma hızı saniyede yaklaşık 10.000 defadır.

KART ÇALIŞMA VOLTAJI KULLANILABİLİR PİNLER MAX ÇÖZÜNÜRLÜK
Uno 5 Volt A0 ve A5 aralığı 10 bit
Mini,Nano 5 Volt A0 ve A7 aralığı 10 Bit
Mega, Mega2560, MegaADK 5 Volt A0 ve A14 aralığı 10 Bit
Micro 5 Volt A0 ve A11* aralığı 10 bit
Leonardo 5 Volt A0 ve A11* aralığı 10 Bit
Zero 3,3 Volt A0 ve A5 aralığı 12 Bit**
Due 3.3 Volt A0 ve A11 aralığı 12 Bit**
MKR Ailesi Kartları 3.3 Volt A0 ve A6 aralığı 12 Bit**

*A0 ile A5 kart üzerinde etiketlidir. A6 ile A11 sırasıyla 4, 6, 8, 9, 10 vee 12 pinlerinde mevcuttur

**analogRead() Bu Kartlar için varsayılan çözünürlük, uyumluluk için 10 bittir. 12 bit olarak değiştirmek için analogReadResolution() kullanmanız gerekir.

Sözdizimi

analogRead(pin)

Parametreler

pin: Okunacak analog giriş pininin adı (çoğu karrta A0 ile A5, MKR kartlarında A0 ila A6, Mini ve Nano'da A0 ile A7, Mega'da A0 ile A15)

Geri Dönüş

Pin üzerindeki analog okuma. Analogdan dijitale dönüştürücünün çözünürlüğü sınırlı olmasına rağmen (0-1023 10 bit için 0-4095 12bir için ) Veri türü ise int(integer) dır.

Örnek Kod

Bu kod analogPin() üzerindeki voltajı okur ve görüntüler


int analogPin = A3; // potansiyometre sileceğindeki (orta terminal) 3 numaralı pine bağlı
                    // toprak hattı ve +5V için yol açar
int val = 0;  // okunan değeri kullanmak için saklanan değişken
    
void setup() {
    Serial.begin(9600);           //  kurulum dizesi
}
    
void loop() {
    val = analogRead(analogPin);  // giriş pinini okur
    Serial.println(val);          // hata ayıklama değeri
}   
                    

Notlar ve Uyarılar

Analog giriş pininin herhangi bir bağlantısı yoksa döndürülen analogRead() değeri bir dizi faktöre(örn. diğer analog girişlerinin değerleri elinizdeki karta ne kadar yakın olduğu vb. ) bağlı olarak dalgalanacaktır.