()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، طبق چند فاکتور (برای مثال: مقدار دیگر ورودیهای آنالوگ، مقدار نزدیکی دست شما به برد و …) درحال تغییر و نوسان خواهد بود.
مثال:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | int analogPin = 3; // پایه وسط پتانسیومتر متصل به پین آنالوگ سه // اتصال های کناری یا بیرونی یکی به زمین و یکی به پنج ولت متصل هستند. int val = 0; // متغیر برای ذخیرهی مقداری که خوانده میشود void setup() { Serial.begin(9600); // برپایی (ستاپ) سریال } void loop() { val = analogRead(analogPin); // خواندن پین ورودی Serial.println(val); // اشکالزدایی (دیباگ) مقدار } |
عالی بود???
🙂