Analog I/O - آنالوگ

analogRead – خواندن انالوگ

analogRead - خواندن آنالوگ

توضیحات

تابع analogRead – خواندن انالوگ، مقدار را از پین انالوگ مشخص شده می خواند. برد های آردوینو دارای مبدل های 10 بیتی انالوگ به دیجیتال هستند. به عبارتی اگر ولتاژ ورودی بین 0 تا 5 ولت (یا 3.3 ولت در برد های 3.3) باشد ، ان را به مقادیر صحیح بین 0 تا 1023 واحد ترسیم می کند. در اردوینو Uno ، دقت در خاوندن 5 ولت برابراست با 0.0049 ولت (4.9 میلی ولت) در هر واحد.

برای پین های قابل استفاده ، ولتاژ عملکرد و حداکثر وضوح برای برخی از برد های آردوینو به جدول زیر مراجعه کنید.

BoardOperating voltageUsable pinsMax resolution
Uno5 VoltsA0 to A510 bits
Mini, Nano5 VoltsA0 to A710 bits
Mega, Mega2560, MegaADK5 VoltsA0 to A1410 bits
Micro5 VoltsA0 to A11*10 bits
Leonardo5 VoltsA0 to A11*10 bits
Zero3.3 VoltsA0 to A512 bits**
Due3.3 VoltsA0 to A1112 bits**
MKR Family boards3.3 VoltsA0 to A612 bits**
ولتاژ عملکرد و حداکثر وضوح برای برخی از برد های آردوینو

* A0 تا A5 روی تابلو برچسب گذاری شده است ، A6 تا A11 به ترتیب در پایه های 4 ، 6 ، 8 ، 9 ، 10 و 12 موجود است.

** وضوح پیش فرض analogRead () برای این تابلوها برای سازگاری 10 بیت است. برای تغییر دادن آن به 12 بیت باید از analogReadResolution () استفاده کنید.

نحوه استفاده

analogRead(pin)

در قسمت pin باید نام پین انالوگی که قرار است خوانده شود.

خروجی تابع

مقدار خوانده شده در پین انالوگ.

مثال

  • اگر چه محدوده این عدد بسته به وضوح مبدل انالوگ به دیجیتال متغیر است (بین 0 تا 1023 برای 10 بیت یا 0 تا 4095 برای 12 بیت). نوع داده int
int analogPin = A3; // potentiometer wiper (middle terminal) connected to analog pin 3
                    // outside leads to ground and +5V
int val = 0;  // variable to store the value read

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

void loop() {
  val = analogRead(analogPin);  // read the input pin
  Serial.println(val);          // debug value
}

اگر پین ورودی آنالوگ به چیزی متصل نباشد، مقدار بازگردانده ‌شده توسط ()analogRead، طبق چند فاکتور (برای مثال: مقدار دیگر ورودی‌های آنالوگ، مقدار نزدیکی دست شما به برد و …) دائم درحال تغییر و نوسان خواهد بود.

نکات مهم

اگر پین آنالوگ به جایی متصل نباشد، خروجی تابع analogRead – خواندن انالوگ نوسان خواهد داشت.

مطالعه بیشتر

پین های آنالوگ

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.