تا اینجا یاد گرفتیم چطور به آردوینو فرمان بدهیم. اما برنامهٔ واقعی باید بتواند دادهها را نگه دارد و بر اساس آنها تصمیم بگیرد. ابزار این کار «متغیر» و «دستور شرطی» است.
متغیر یک جعبه با اسم است که داخل آن یک مقدار ذخیره میکنیم. هر متغیر یک «نوع» دارد:
int برای اعداد صحیح، مثل 0 یا 120.float برای اعداد اعشاری، مثل 3.14 یا 1.5.bool برای مقدار درست/نادرست، یعنی true یا false.int ledPin = 8;
float voltage = 4.7;
bool isDark = false;
با if میگوییم «اگر یک شرط درست بود، این کارها را انجام بده؛ وگرنه (else) کار دیگری بکن». برای مقایسه از این عملگرها استفاده میکنیم: > بزرگتر، < کوچکتر، >= و <=، == برابر بودن و != نابرابر بودن.
==) استفاده کن. یک مساوی (=) یعنی «مقداردهی» نه «مقایسه».فرض کن یک سنسور نور به پایهٔ آنالوگ A0 وصل است. اگر محیط تاریک شد، LED را روشن میکنیم؛ در غیر این صورت خاموش.
int lightPin = A0;
int ledPin = 8;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
int lightValue = analogRead(lightPin); // عددی بین 0 تا 1023
Serial.println(lightValue);
if (lightValue < 400) {
digitalWrite(ledPin, HIGH); // تاریک است، چراغ روشن
} else {
digitalWrite(ledPin, LOW); // روشن است، چراغ خاموش
}
delay(200);
}
در این کد analogRead یک عدد میخواند، آن را در متغیر lightValue میگذاریم و با شرط if مقایسه میکنیم. عدد 400 آستانهٔ ما است؛ میتوانی آن را تغییر دهی تا حساسیت دلخواهت را بگیری.
lightValue استفاده کن تا کدت خواناتر شود.این کد را همین حالا در حالت کدنویسی شبیهساز روبومیکر بنویس و اجرا کن.
🔌 همین حالا توی شبیهساز آنلاین روبومیکر امتحان کن — رایگان و بدون نصب