טבעת קשת בענן
חלק מהיחידה צגים וחיישנים במסלול ה-Arduino של Coddy. שיעור 17 מתוך 24.
קשה לבחור אדום, ירוק וכחול לקשת בענן. גוון פשוט יותר: מספר אחד שמסתובב בגלגל הצבעים, מאדום דרך צהוב, ירוק, ציאן, כחול ומג'נטה, וחזרה לאדום.
ring.ColorHSV(hue) הופכת גוון לצבע. טווח הגוונים הוא מ־0 עד 65535: 0 הוא אדום, בערך 21845 הוא ירוק, בערך 43690 הוא כחול, ו־65536 היה שוב אדום.
כדי לפרוס קשת בענן אחת על פני 16 פיקסלים, תן לכל פיקסל צעד של 65536 / 16 = 4096 יותר מהפיקסל שלפניו. הפיקסל 15 זקוק ל־61440, יותר ממה ש־int יכול להכיל, לכן שמור את הגוון ב־long וכתוב את המספר בתור 4096L; ה־L גורם גם לכפל להשתמש ב־long:
for (int i = 0; i < 16; i++) {
long hue = i * 4096L;
ring.setPixelColor(i, ring.ColorHSV(hue));
}
ring.show();אתגר
בינוניציירו קשת בענן מסביב לטבעת:
- פיקסל 0 אדום (גוון 0)
- כל פיקסל הבא מתקדם ב־4096 לאורך גלגל הצבעים, בעזרת
ring.ColorHSV() - כך ש־16 הפיקסלים יקיפו אותו פעם אחת
לחצו על Run, ואז על Check.
נסו בעצמכם
#include <Adafruit_NeoPixel.h>
// 16 פיקסלים, הנתונים בפין 6
Adafruit_NeoPixel ring(16, 6, NEO_GRB + NEO_KHZ800);
void setup() {
ring.begin();
// תן לכל פיקסל גוון משלו, אדום בפיקסל 0
ring.show();
}
void loop() {
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה צגים וחיישנים
3NeoPixels
ה-NeoPixel הראשון שלךצבעים בטבעת פיקסליםמילוי וניקוי הטבעתמרדף פיקסליםבהירות NeoPixelטבעת קשת בענןתרגלו בעצמכם: Arduino אונליין