תוכן עניינים:

Arduino Nano Baised IR נשלט RGB LED: 5 שלבים
Arduino Nano Baised IR נשלט RGB LED: 5 שלבים

וִידֵאוֹ: Arduino Nano Baised IR נשלט RGB LED: 5 שלבים

וִידֵאוֹ: Arduino Nano Baised IR נשלט RGB LED: 5 שלבים
וִידֵאוֹ: Lesson 68, Home Automation: How to control 16 Channel Relay module using Arduino control 16 AC loads 2024, נוֹבֶמבֶּר
Anonim
Arduino Nano Baised IR נשלט RGB LED
Arduino Nano Baised IR נשלט RGB LED

בפרויקט הקטן הזה אני רוצה להראות לך כיצד בניתי LED RGB מבוסס Arduino הנשלט על ידי שלט IR ומופעל באמצעות כבל USB.

אספקה

1. LED RGB

2. מקלט IR

3. כבל USB

4. ננו ארדואינו

5. שלט IR

6. כמה כבלים

7. נגדי 50-100 אוהם (אני משתמש בנגדים של 47 אוהם אבל אין הבדל גדול)

שלב 1: בחר את השלט שלך

בחר את השלט שלך
בחר את השלט שלך

אז באיזה שלט אתה משתמש זו ההחלטה שלך, אבל השלט צריך לכלול 6 מפתחות שבהם אתה רוצה להשתמש. 2 מהם מיועדים לאדום, 2 מהם לירוק ושניים לכחול.

שלב 2: בנה אותו קודם על לוח לחם (לא הכרחי אך מומלץ)

בנה אותו קודם על לוח לחם (לא הכרחי אך מומלץ)
בנה אותו קודם על לוח לחם (לא הכרחי אך מומלץ)
בנה אותו קודם על לוח לחם (לא הכרחי אך מומלץ)
בנה אותו קודם על לוח לחם (לא הכרחי אך מומלץ)

עכשיו, בנה את המעגל על לוח לחם

חיבורים:

RGB LED GND> Arduino nano GND

RGB LED אדום> פין Arduino ננו דיגיטלי 5

RGB LED ירוק> פין Arduino ננו דיגיטלי 6

RGB LED כחול> Arduino nano Digital pin 9

USB GND> Arduino nano GND

USB 5v> Arduino nano 5v

פין מקלט IR 1> פין Arduino ננו דיגיטלי 4

פין מקלט IR 2> Arduino nano GND

פין מקלט IR 3> Arduino nano 5v

(כל החיבורים מוצגים למעלה)

(כל סיכת צבע של RGB LED מחוברת סדרות לנגדים)

שלב 3: הקוד

הקוד הוא הבא:

הנה הספרייה בה השתמשתי.

#לִכלוֹל

int IR_Recv = 4; // סיכת מקלט IR

int Rval = 0; int Gval = 0; int Bval = 0; int RvalDemo = 0; int GvalDemo = 0; int BvalDemo = 0; int R = 5; // סיכה אדומה int G = 6; // סיכה ירוקה int B = 9; // סיכה כחולה #הגדר Rup1 1976685926 // גורמת לבהירות אדומה לעלות #להגדיר Rup2 3772818013 // גורמת לבהירות אדומה לעלות #להגדיר Rdown1 3843765582 // גורמת לבהירות אדומה לרדת #הגדרה Rdown2 3772813933 // גורמת לבהירות אדומה לרדת #להגדיר Gup1 3772797613 // גורם לבהירות ירוקה לעלות #הגדר Gup2 3774104872 // גורם לבהירות ירוקה לעלות #הגדר Gdown1 3772834333 // גורם לבהירות ירוקה לרדת #הגדר Gdown2 1784778242 // גורם לבהירות ירוקה לרדת #הגדר Bup1 3980777284 // הופך לכחול בהירות עולה #הגדר Bup2 3772781293 // גורם לבהירות כחולה לעלות #הגדר Bdown1 3772801693 // גורם לבהירות כחולה לרדת #הגדר Bdown2 3361986248 // גורם לבהירות כחולה לרדת // הערה: אתה צריך לשנות מספרים לשלט שלך !!! ! // יש לי 2 מפתחות כפולים למשל Rup1 ו- Rup2. כי // השלט שלי מוציא 2 מספרים כאשר אתה לוחץ על מקש אחד. // במקרה שלך אתה יכול לשים את אותם מספרים ב- Rup1 ו- Rup2, Gup1 ו- Gup2 וכך אחד. // כאשר אתה לוחץ על מקש המספר אמור להופיע במסך הסידורי, // זה מה שאתה צריך להקליד בסעיף "#define". IRrecv irrecv (IR_Recv); תוצאות decode_results; הגדרת חלל () {TCCR2A = _BV (COM2A1) | _BV (COM2B1) | _BV (WGM21) | _BV (WGM20); TCCR2B = _BV (CS22); irrecv.enableIRIn (); pinMode (R, OUTPUT); pinMode (G, OUTPUT); pinMode (B, OUTPUT); Serial.begin (9600); } לולאת void () {if (irrecv.decode (& תוצאות)) {long int decCode = results.value; switch (results.value) {/////////// מקרה אדום Rup1: Rval = Rval + 10; לשבור; מקרה Rup2: Rval = Rval + 10; לשבור; מקרה Rdown1: Rval = Rval - 10; לשבור; מקרה Rdown2: Rval = Rval - 10; לשבור; //////////// GREEN מקרה Gup1: Gval = Gval + 10; לשבור; מקרה Gup2: Gval = Gval + 10; לשבור; מקרה Gdown1: Gval = Gval - 10; לשבור; מקרה Gdown2: Gval = Gval - 10; לשבור; ////////////// BLUE מקרה Bup1: Bval = Bval + 10; לשבור; מקרה Bup2: Bval = Bval + 10; לשבור; מקרה Bdown1: Bval = Bval - 10; לשבור; מקרה Bdown2: Bval = Bval - 10; לשבור; ///////////////////////////////////////// } אם (Rval> 255) (Rval = 255); אם (Rval 255) (Gval = 255); אם (Gval 255) (Bval = 255); אם (Bval <0) (Bval = 0); analogWrite (R, Rval); analogWrite (G, Gval); analogWrite (B, Bval); Serial.println (results.value); delayMicroseconds (1); }

שלב 4: סיום

מסיים
מסיים
מסיים
מסיים
מסיים
מסיים

לא עשיתי עבודת מעטפת טובה. כל מה שעשיתי הוא רק להדביק אותו, אבל ניסיתי להפוך אותו לקטן ככל האפשר.

אם יש לך שאלות או טעויות הקפד לספר לי, אעשה כמיטב יכולתי לעזור לך לתקן את הטעות. תודה שקראתם.

מוּמלָץ: