ערכי החזרה
חלק מהיחידה קלטים במסלול ה-Arduino של Coddy. שיעור 21 מתוך 22.
פונקציה יכולה גם להחזיר ערך. כתבו את סוג הערך במקום void, וסיימו ב-return ובערך:
int readPercent() {
int reading = analogRead(A0);
return map(reading, 0, 1023, 0, 100);
}הקריאה מייצגת כעת את הערך הזה, כמו analogRead(). אפשר לשמור אותו, להדפיס אותו או להשוות אותו:
int percent = readPercent();
if (readPercent() > 50) {
// ...
}return גם מסיים את הפונקציה מיד: השורות שאחריו אינן רצות. משתנים שנוצרים בתוך פונקציה, כמו reading כאן, קיימים רק בזמן שהיא רצה; הערך המוחזר הוא הדרך שבה התוצאה יוצאת החוצה.
אתגר
קלהכפתור מחובר ל-A0 וה-LED לפין 13:
- כתבו
int readPercent()שקוראת את A0 ומחזירה את הערך כשהוא ממופה לטווח 0 עד 100 - בתוך
loop(), שמרו את הערך שמחזירהreadPercent()במשתנה והדפיסו אותו - הדליקו את ה-LED כשהאחוז גבוה מ-50, אחרת כבו אותו; המתינו 100 ms
לחצו על Run, סובבו את הכפתור, ואז לחצו על Check.
נסו בעצמכם
const int ledPin = 13;
// כתבו כאן int readPercent()
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
// int percent = readPercent();
// הדפיסו את הערך, הדליקו את ה-LED כשהוא מעל 50, והמתינו 100 ms
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה קלטים
תרגלו בעצמכם: Arduino אונליין