מהבהב 3 נוריות (R, G, B) ברצף באמצעות מעגל Arduino

נסה את הכלי שלנו לביטול בעיות





הפוסט מסביר כיצד להריץ או למצמץ שלוש נוריות ברצף באמצעות Arduino. הפוסט נכתב והוגש על ידי: ג'ק פרנקו

PROGRAM
/* make RGB LEDs to blink in series one by one at interval
of 1000MS */

int R = 12int G = 11int B = 10
void setup(){ pinMode
(R,OUTPUT) pinMode
(G,OUTPUT) pinMode
(B,OUTPUT)

}
void loop(){ digitalWrite
(R,HIGH) delay (1000) digitalWrite
(R,LOW) delay (1000) digitalWrite
(G,HIGH) delay (1000) digitalWrite
(G,LOW) delay (1000) digitalWrite
(B,HIGH) delay (1000) digitalWrite
(B,LOW) delay (1000)

}



תיאור

היום אנחנו הולכים
ללמוד להדליק ולכבות 3 נוריות (אדומות, ירוקות, כחולות) אחת אחת במרווח של
1000MS שהיא שנייה אחת.
int R = 12 int G = 11 int B = 10

כפי שאנו מודעים לאמירה שלמה שלמדנו קודם,
היום נשתמש במספר השלם R, G & B אשר נקבע על סיכה ארדואינו מספר 12, 11 ו- 10 בהתאמה.
אנו משתמשים ב- R, G ו- B לצבעי LED כדי להדליק ולהסתיר אותו בסודיות כדי להפוך את המסובך ופשוט יותר להבנה מה אנו עושים.
לאחר הגדרת כל המספרים השלמים כפי שמוצג בתוכנית לעיל, נגדיר את חלק התוכנית הראשי שהוא ההתקנה הריקית כאמור להלן



void setup(){ pinMode
(R,OUTPUT) pinMode
(G,OUTPUT) pinMode
(B,OUTPUT)

כאן אנו מציינים את מצב האורן כפלט עם מספר שלם שהוגדר בעבר כלומר. R עבור סיכה מס '12, G עבור סיכה מספר 11 ו- B עבור סיכה מס' 10. לאחר הצהרה של סיכת ארדואינו עם מצב פינים כפלט עם מספר שלם זה הזמן להגדיר את הלולאה שלנו לכל הפינים לעבוד איתה. כאן הפונקציה העיקרית השנייה היא לולאה בטלה כאמור להלן.

void loop(){ digitalWrite
(R,HIGH) delay (1000) digitalWrite
(R,LOW) delay (1000) digitalWrite
(G,HIGH) delay (1000) digitalWrite
(G,LOW) delay (1000) digitalWrite
(B,HIGH) delay (1000) digitalWrite
(B,LOW) delay (1000)

} כאן בהצהרת לולאה אנו אומרים לארדואינו לעבוד עם סיכה מספר 12 המצוינת כ- R במספר שלם ופלט בהגדרת הריק. אנו נגיד לארדואינו להגדיר סיכה מספר 12 במצב 'גבוה' שפירושה 'מופעל' ולהמתין לשנייה אחת אשר 1000MS בשפה חשבונית בעזרת 'עיכוב' פונקציה. התסריט המופיע בהמשך יוגדר למצב פועל והוא ימתין לשנייה אחת אך ארדואינו לא יבין שמה לעשות לאחר המתנה לשנייה אחת, זה יוביל להישאר מוביל במיקום לאורך זמן.

digitalWrite
(R,HIGH) delay (1000)

אז אחרי שנייה אחת עלינו לומר לארדואינו להגדיר סיכה לא '12' כלומר 'R' למצב 'נמוך' שהוא 'OFF'.

digitalWrite
(R,LOW)

ההצהרה שצוינה לעיל תפחית את ההובלה. אם אנו מעירים תגובה כדי לחכות לשנייה אחת, ארדואינו ימשיך לקרוא את הלולאה ולהפוך את הנורית למצב 'דולק' לעיתים קרובות. לכן בשלב זה עלינו להעיר ולציין את פונקציית ההשהיה כדי לומר לארדואינו כי לאחר סיכה מספר 12 ב' OFF ”המתן לשנייה אחת באיזה 1000MS.

delay (1000)

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

digitalWrite
(G,HIGH) delay (1000) digitalWrite
(G,LOW) delay (1000) digitalWrite
(B,HIGH) delay (1000) digitalWrite
(B,LOW) delay (1000)

תוכנית זו תקבע שלוש נוריות R, G & B להפעלת 'ON' ו- 'OFF' בהתאמה לאורך זמן. אתה יכול לתכנת יותר מ -3 נוריות כדי להדליק ולכבות כרצונך. מדריכים אלה מיועדים לניבונים להבין את התוכנית ולשחק עם ארדואינו.




קודם: מעגל גלאי אינפרא אדום (IR) מכוון הבא: הפוך את המעגל לאפס סט פשוט זה באמצעות IC 555