Menu
CoddyTech

צבעים בטבעת פיקסלים

חלק מהיחידה צגים וחיישנים במסלול ה-Arduino של Coddy. שיעור 13 מתוך 24.

הטבעת הזאת מכילה 16 נוריות NeoPixel על חוט נתונים אחד. הנורית הראשונה מעבירה את שאר הנתונים לנורית הבאה, כך שקריאה אחת ל־show() קובעת את כולן. הן ממוספרות מ־0 עד 15.

ring.Color(red, green, blue) אורז צבע למספר אחד, כך שאפשר לשמור אותו במשתנה ולהשתמש בו שוב. הסוג שלו הוא uint32_t: מספר שלם בן 32 ביטים שאינו שלילי לעולם, וגדול מספיק כדי להכיל את שלושת הרכיבים.

uint32_t purple = ring.Color(150, 0, 255);

ring.setPixelColor(3, purple);
ring.setPixelColor(7, purple);
ring.show();

נורית שלא נותנים לה צבע נשארת כבויה. הערך 255 בכל שלושת הרכיבים יוצר צבע לבן.

challenge icon

אתגר

קל

הטבעת מחוברת לפין 6. הדליקו ארבעה פיקסלים, במרחק רבע טבעת זה מזה:

  • פיקסל 0 באדום, פיקסל 4 בירוק, פיקסל 8 בכחול, פיקסל 12 בלבן
  • צרו כל צבע באמצעות ring.Color(), כאשר כל רכיב הוא 0 או 255
  • השאירו את שאר הפיקסלים כבויים

לחצו על Run, ואז על Check.

נסו בעצמכם

#include <Adafruit_NeoPixel.h>

// 16 פיקסלים, נתונים בפין 6
Adafruit_NeoPixel ring(16, 6, NEO_GRB + NEO_KHZ800);

void setup() {
  ring.begin();

  // פיקסל 0 אדום, 4 ירוק, 8 כחול, 12 לבן

  ring.show();
}

void loop() {
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה צגים וחיישנים

תרגלו בעצמכם: Arduino אונליין