Përmbajtje:

Arduino Nano Baised IR e kontrolluar RGB LED: 5 hapa
Arduino Nano Baised IR e kontrolluar RGB LED: 5 hapa

Video: Arduino Nano Baised IR e kontrolluar RGB LED: 5 hapa

Video: Arduino Nano Baised IR e kontrolluar RGB LED: 5 hapa
Video: Lesson 98: Arduino 10 LED Push button Projects, Potentiometer LED Voltmeter and Traffic Light 2024, Korrik
Anonim
Arduino Nano Baised IR e kontrolluar RGB LED
Arduino Nano Baised IR e kontrolluar RGB LED

në këtë projekt të vogël dua t'ju tregoj se si kam ndërtuar RGB LED me bazë Arduino që kontrollohet nga telekomanda IR dhe mundësohet nga kabllo USB.

Furnizimet

1. LED RGB

2. Marrës IR

3. Kabllo USB

4. Arduino nano

5. IR telekomandë

6. disa kabllo

7. Rezistenca 50-100 ohm (jam duke përdorur rezistenca 47 ohm, por nuk ka shumë ndryshim)

Hapi 1: Zgjidhni telekomandën tuaj

Zgjidhni telekomandën tuaj
Zgjidhni telekomandën tuaj

Pra, cilin telekomandë përdorni është vendimi juaj, por telekomanda juaj duhet të ketë 6 çelësa që dëshironi të përdorni. 2 prej tyre janë për të Kuqe, 2 prej tyre për Gjelbër dhe 2 për Blu.

Hapi 2: Fillimisht ndërtojeni atë në një dërrasë bukë (jo e nevojshme por e rekomanduar)

Ndërtoni atë në një dërrasë Bukë së pari (jo e nevojshme por e rekomanduar)
Ndërtoni atë në një dërrasë Bukë së pari (jo e nevojshme por e rekomanduar)
Ndërtoni atë në një dërrasë Bukë së pari (jo e nevojshme por e rekomanduar)
Ndërtoni atë në një dërrasë Bukë së pari (jo e nevojshme por e rekomanduar)

Tani, ndërtoni qarkun në një dërrasë buke

lidhjet:

RGB LED GND> Arduino nano GND

RGB LED e kuqe> Arduino nano Pin dixhitale 5

RGB LED e Gjelbër> Arduino nano Pin dixhital 6

RGB LED Blu> Arduino nano Pin dixhital 9

USB GND> Arduino nano GND

USB 5v> Arduino nano 5v

PIN i marrësit IR 1> Arduino nano Pin dixhital 4

PIN i marrësit IR 2> Arduino nano GND

PIN i marrësit IR 3> Arduino nano 5v

(të gjitha lidhjet janë treguar më lart)

(çdo kunj ngjyra e RGB LED është e lidhur në seri me rezistorët)

Hapi 3: Kodi

kodi është si më poshtë:

Këtu është biblioteka që kam përdorur.

#përfshi

int IR_Recv = 4; // pin pin i marrësit IR

int Rval = 0; int Gval = 0; int Bval = 0; int RvalDemo = 0; int GvalDemo = 0; int BvalDemo = 0; int R = 5; // Kunja e kuqe int G = 6; // Kunja jeshile int B = 9; // Pin blu #define Rup1 1976685926 // bën që shkëlqimi i kuq të rritet #define Rup2 3772818013 // bën që shkëlqimi i kuq të rritet #define Rdown1 3843765582 // bën që shkëlqimi i kuq të bjerë poshtë #define Rdown2 3772813933 // bën që shkëlqimi i kuq të bjerë #define Gup1 3772797613 // e bën ndriçimin e gjelbër të rritet #define Gup2 3774104872 // e bën shkëlqimin e gjelbër të rritet #define Gdown1 3772834333 // e zvogëlon shkëlqimin e gjelbër #define Gdown2 1784778242 // e bën shkëlqimin e gjelbër të ulet #define Bup1 3980777284 // e bën blu shkëlqimi shkon lart #define Bup2 3772781293 // bën që shkëlqimi blu të rritet #përcakto Bdown1 3772801693 // bën që shkëlqimi blu të bjerë poshtë #define Bdown2 3361986248 // e bën të zbresë shkëlqimin blu // SHENIM: DUHET T CH NDRYSHONI Numrat në distancën tuaj !!! ! // Kam 2 çelësa të kopjuar për shembull Rup1 dhe Rup2. sepse // telekomanda ime nxjerr 2 numra kur shtypni një buton. // në rastin tuaj ju mund të vendosni të njëjtët numra në Rup1 dhe Rup2, Gup1 dhe Gup2 dhe kështu një. // Kur shtypni një çelës, numri duhet të shfaqet në Serial monitor, // Kjo është ajo që duhet të shkruani në seksionin "#define". IRrecv irrecv (IR_Recv); rezultatet e deshifrimit të rezultateve; 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); Serial.filloj (9600); } void loop () {if (irrecv.decode (& results)) {long int decCode = results.value; kaloni (results.value) {/////////// RED rast Rup1: Rval = Rval + 10; pushim; rasti Rup2: Rval = Rval + 10; pushim; rasti Rdown1: Rval = Rval - 10; pushim; rasti Rdown2: Rval = Rval - 10; pushim; ///////////// Rasti GREEN Gup1: Gval = Gval + 10; pushim; rasti Gup2: Gval = Gval + 10; pushim; rasti Gdown1: Gval = Gval - 10; pushim; rasti Gdown2: Gval = Gval - 10; pushim; ////////////// Rasti BLUE Bup1: Bval = Bval + 10; pushim; rasti Bup2: Bval = Bval + 10; pushim; rasti Bdown1: Bval = Bval - 10; pushim; rasti Bdown2: Bval = Bval - 10; pushim; //////////////////////////////////////////recv.resume (); } if (Rval> 255) (Rval = 255); nëse (Rval 255) (Gval = 255); nëse (Gval 255) (Bval = 255); nëse (Bval <0) (Bval = 0); analogWrite (R, Rval); analogWrite (G, Gval); analogWrite (B, Bval); Serial.println (rezultatet.vlera); vonesa Mikrosekonda (1); }

Hapi 4: Përfundimi

Duke përfunduar
Duke përfunduar
Duke përfunduar
Duke përfunduar
Duke përfunduar
Duke përfunduar

Unë nuk kam bërë një punë të mirë të zorrës. gjithçka që bëra ishte vetëm ta ngjisja, por u përpoqa ta bëja sa më të vogël të ishte e mundur.

Nëse keni ndonjë pyetje ose ndonjë gabim sigurohuni që të më tregoni, unë do të bëj çmos për t'ju ndihmuar të rregulloni gabimin. faleminderit per leximin.

Recommended: