ملء الحلقة ومسحها
جزء من قسم الشاشات والمستشعرات في رحلة Arduino على Coddy. الدرس 14 من 24.
يُعيّن استدعاءان لون كل بكسل دفعةً واحدة:
ring.fill(blue); // كل بكسل أزرق
ring.clear(); // كل بكسل مطفأمثل setPixelColor()، لا يغيّران إلا الألوان المخزنة في ذاكرة اللوحة. تظل الحلقة تعرض آخر ما أُرسل إليها حتى تستدعي show(). لذا، بعد clear()، تظل الحلقة مضاءة حتى الاستدعاء التالي لـ show().
هذا مقصود: يمكنك تغيير العديد من وحدات البكسل وإرسالها دفعةً واحدة، فتتغير الحلقة بأكملها في اللحظة نفسها بدلًا من تغيير وحدة بكسل واحدة في كل مرة.
التحدي
سهلأضِئ الحلقة كلها:
- اجعل كل بكسل باللون الأزرق لمدة 500 ms
- ثم أطفئ كل بكسل لمدة 500 ms
- وكرّر ذلك مرارًا
اضغط على Run، ثم Check.
جرّب بنفسك
#include <Adafruit_NeoPixel.h>
// 16 بكسلًا، والبيانات على الطرف 6
Adafruit_NeoPixel ring(16, 6, NEO_GRB + NEO_KHZ800);
uint32_t blue = ring.Color(0, 0, 255);
void setup() {
ring.begin();
}
void loop() {
// تضيء الحلقة كلها باللون الأزرق لمدة 500 ms، ثم تنطفئ لمدة 500 ms
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الشاشات والمستشعرات
1شاشات العرض ذات الأجزاء السبعة
شاشة العرض ذات الأجزاء السبعةأنماط الأرقام في البايتاتالعدّ على الشاشةالعدّ التنازلي حتى الصفرمحاكي رمي النرد3NeoPixels
أول NeoPixel لكالألوان على حلقة البكسلاتملء الحلقة ومسحهامطاردة البكسلاتسطوع NeoPixelحلقة قوس قزحتدرّب بنفسك: Playground لـ Arduino