Satura rādītājs:

Arduino Nano Baised IR kontrolēta RGB gaismas diode: 5 soļi
Arduino Nano Baised IR kontrolēta RGB gaismas diode: 5 soļi

Video: Arduino Nano Baised IR kontrolēta RGB gaismas diode: 5 soļi

Video: Arduino Nano Baised IR kontrolēta RGB gaismas diode: 5 soļi
Video: How to make a LED digital counter using 7- Segment Display 2024, Jūlijs
Anonim
Arduino Nano Baised IR kontrolēta RGB LED
Arduino Nano Baised IR kontrolēta RGB LED

šajā mazajā projektā es vēlos jums parādīt, kā es uzbūvēju uz Arduino balstītu RGB LED, kuru kontrolē ar IR tālvadības pulti un kuru darbina ar USB kabeli.

Piegādes

1. RGB gaismas diode

2. IR uztvērējs

3. USB kabelis

4. Arduino nano

5. IR tālvadības pults

6. daži kabeļi

7. 50-100 omu rezistori (es izmantoju 47 omu rezistorus, bet nav lielas atšķirības)

1. darbība: izvēlieties tālvadības pulti

Izvēlieties tālvadības pulti
Izvēlieties tālvadības pulti

Tātad, kuru tālvadības pulti jūs izmantojat, ir jūsu lēmums, bet tālvadības pultī jābūt 6 taustiņiem, kurus vēlaties izmantot. 2 no tiem ir sarkanam, 2 - zaļam un 2 - zilam.

2. darbība: vispirms izveidojiet to uz maizes dēļa (nav nepieciešams, bet ieteicams)

Vispirms izveidojiet to uz maizes dēļa (nav nepieciešams, bet ieteicams)
Vispirms izveidojiet to uz maizes dēļa (nav nepieciešams, bet ieteicams)
Vispirms izveidojiet to uz maizes dēļa (nav nepieciešams, bet ieteicams)
Vispirms izveidojiet to uz maizes dēļa (nav nepieciešams, bet ieteicams)

Tagad izveidojiet ķēdi uz maizes dēļa

savienojumi:

RGB LED GND> Arduino nano GND

RGB LED sarkans> Arduino nano Digital pin 5

RGB LED zaļa> Arduino nano digitālā tapa 6

RGB LED zils> Arduino nano digitālā tapa 9

USB GND> Arduino nano GND

USB 5v> Arduino nano 5v

IR uztvērēja tapa 1> Arduino nano Digital pin 4

IR uztvērēja tapa 2> Arduino nano GND

IR uztvērēja tapa 3> Arduino nano 5v

(visi savienojumi ir parādīti iepriekš)

(katra RGB LED krāsu tapa ir sērijveidā savienota ar rezistoriem)

3. darbība: kods

kods ir šāds:

Šeit ir bibliotēka, kuru es izmantoju.

#iekļaut

int IR_Recv = 4; // IR uztvērēja tapa

int Rval = 0; int Gval = 0; int Bval = 0; int RvalDemo = 0; int GvalDemo = 0; int BvalDemo = 0; int R = 5; // Sarkana tapa int G = 6; // Zaļā tapa int B = 9; // zilā tapa #define Rup1 1976685926 // palielina sarkanā spilgtumu #define Rup2 3772818013 // palielina sarkanā spilgtumu #define Rdown1 3843765582 // samazina sarkano spilgtumu #define Rdown2 3772813933 // samazina sarkanā spilgtumu #define Gup1 3772797613 // palielina zaļo spilgtumu #define Gup2 3774104872 // palielina zaļo spilgtumu #define Gdown1 3772834333 // samazina zaļo spilgtumu #define Gdown2 1784778242 // samazina zaļo spilgtumu #define Bdown1 3980777284 // padara zilu spilgtums pieaugt #define Bup2 3772781293 // palielina zilo spilgtumu #define Bdown1 3772801693 // samazina zilo spilgtumu #define Bdown2 3361986248 // samazina zilo spilgtumu // PIEZĪME: JĀMAINĀS SAVU TĀLDIENĪBAS CIPARI !!! ! // Man ir 2 atslēgu dublikāti, piemēram, Rup1 un Rup2. jo // mans tālvadības pults izvada 2 ciparus, nospiežot vienu taustiņu. // jūsu gadījumā jūs varat ievietot vienus un tos pašus skaitļus Rup1 un Rup2, Gup1 un Gup2 un tā tālāk. // Nospiežot taustiņu, numuram vajadzētu parādīties sērijas monitorā, // Tas ir tas, kas jums jāievada sadaļā "#define". IRrecv irrecv (IR_Recv); decode_results rezultāti; void setup () {TCCR2A = _BV (COM2A1) | _BV (COM2B1) | _BV (WGM21) | _BV (WGM20); TCCR2B = _BV (CS22); irrecv.enableIRIn (); pinMode (R, OUTPUT); pinMode (G, OUTPUT); pinMode (B, OUTPUT); Sērijas sākums (9600); } void loop () {if (irrecv.decode (& results)) {long int decCode = results.value; slēdzis (results.value) {//////////// RED case Rup1: Rval = Rval + 10; pārtraukums; gadījums Rup2: Rval = Rval + 10; pārtraukums; gadījums Rdown1: Rval = Rval - 10; pārtraukums; gadījums Rdown2: Rval = Rval - 10; pārtraukums; //////////// GREEN gadījums Gup1: Gval = Gval + 10; pārtraukums; gadījums Gup2: Gval = Gval + 10; pārtraukums; gadījums Gdown1: Gval = Gval - 10; pārtraukums; gadījums Gdown2: Gval = Gval - 10; pārtraukums; ///////////// BLUE gadījums Bup1: Bval = Bval + 10; pārtraukums; gadījums Bup2: Bval = Bval + 10; pārtraukums; gadījums Bdown1: Bval = Bval - 10; pārtraukums; gadījums Bdown2: Bval = Bval - 10; pārtraukums; /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// } ja (Rval> 255) (Rval = 255); ja (Rval 255) (Gval = 255); ja (Gval 255) (Bval = 255); ja (Bval <0) (Bval = 0); analogWrite (R, Rval); analogWrite (G, Gval); analogWrite (B, Bval); Serial.println (results.value); delayMikrosekundes (1); }

4. solis: apdare

Apdare
Apdare
Apdare
Apdare
Apdare
Apdare

Es neesmu paveicis labu apvalka darbu. viss, ko es darīju, ir tikai lente, bet es centos to padarīt pēc iespējas mazāku.

Ja jums ir kādi jautājumi vai kļūdas, noteikti pastāstiet man, es darīšu visu iespējamo, lai palīdzētu jums novērst kļūdu. paldies, ka izlasījāt.

Ieteicams: