()analogRead در آردوینو

()analogRead در آردوینو داده‌ را از پین آنالوگ مشخص‌شده می‌خواند. برد آردوینو حاوی یک مبدل آنالوگ به دیجیتال 6 کاناله (8 کاناله در Mini و Nano و 16 کاناله در Mega) و 10 بیتی است؛ به این معنا که این مبدل، ولتاژهای ورودی بین 0 تا 5 ولت را به مقداری صحیح (integer) بین 0 تا 1023، تبدیل خواهد کرد. این کار رزولوشنی بین خوانش‌های: 5 ولت / 1024 واحد یا 0049. ولت (mV 4.9) بر واحد را نتیجه خواهد داد. این محدوده‌ی ورودی و رزولوشن را می‌توانید با استفاده از ()analogReference تغییر دهید. خواندن یک ورودی آنالوگ، تقریباً حدود 100 میکروثانیه (0.0001 ثانیه) طول می‌کشد؛ پس حداکثر (ماکزیمم) نرخ خواندن، حدود 10,000 بار در ثانیه است.

سینتکس (نحو)

(analogRead(pin

پارامتر

pin: عدد پین آنالوگی که می‌خواهیم از آن بخوانیم (روی بیشتر بردها از 0 تا 5، از 0 تا 7 روی Mini و Nano و 0 تا 15 روی Mega).

خروجی

از نوع int (صفر تا 1023)

نکته

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

مثال:

 

int analogPin = 3;
// پایه وسط پتانسیومتر متصل به پین آنالوگ سه

// اتصال های کناری یا بیرونی یکی به زمین و یکی به پنج ولت متصل هستند.

int val = 0;
// متغیر برای ذخیره‌ی مقداری که خوانده می‌شود

void setup()

{

Serial.begin(9600);
// برپایی (ستاپ) سریال

}

void loop()

{

val = analogRead(analogPin);
// خواندن پین ورودی

Serial.println(val);
// اشکال‌زدایی (دیباگ) مقدار

}

()analogReference در آردوینو

()analogReadResolution

Tutorial: Analog Input Pins

 

منبع

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

نویسنده و طراح الکترونیکا هستم . سوالی داشتید در کامنت ها یا پیج های اینستاگرام و تلگرام سایت بپرسید .