Агуулгын хүснэгт:

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 алхам
Видео: Probando sensores IR con FPGAs libres (Ejemplo 4) 2024, Долдугаар сарын
Anonim
Arduino Nano Baised IR хяналттай RGB LED
Arduino Nano Baised IR хяналттай RGB LED

Энэхүү жижиг төсөл дээр би IR алсын удирдлагатай, USB кабелиар ажилладаг Arduino дээр суурилсан RGB LED -ийг хэрхэн бүтээснээ харуулахыг хүсч байна.

Хангамж

1. RGB LED

2. IR хүлээн авагч

3. USB кабель

4. Arduino нано

5. IR алсын удирдлага

6. зарим кабель

7. 50-100 ом эсэргүүцэл (47 ом эсэргүүцэл ашигладаг боловч тийм ч их ялгаа байхгүй)

Алхам 1: Алсын удирдлагаа сонгоно уу

Алсын удирдлагаа сонгоно уу
Алсын удирдлагаа сонгоно уу

Та алсын удирдлага ашиглах нь таны шийдвэр, гэхдээ таны удирдлага ашиглахыг хүссэн 6 түлхүүртэй байх ёстой. Тэдний 2 нь Улаан, 2 нь Ногоон, 2 нь Цэнхэр өнгөтэй байна.

Алхам 2: Эхлээд талхны тавцан дээр бүтээгээрэй (шаардлагагүй боловч санал болгож байна)

Үүнийг эхлээд талхны тавцан дээр бүтээх (шаардлагагүй боловч санал болгож байна)
Үүнийг эхлээд талхны тавцан дээр бүтээх (шаардлагагүй боловч санал болгож байна)
Үүнийг эхлээд талхны тавцан дээр бүтээх (шаардлагагүй боловч санал болгож байна)
Үүнийг эхлээд талхны тавцан дээр бүтээх (шаардлагагүй боловч санал болгож байна)

Одоо хэлхээг талхны самбар дээр хий

холболтууд:

RGB LED GND> Arduino нано GND

RGB LED Улаан> Arduino нано дижитал зүү 5

RGB LED Ногоон> Arduino нано дижитал зүү 6

RGB LED Blue> Arduino нано дижитал зүү 9

USB GND> Arduino нано GND

USB 5v> Arduino нано 5v

IR хүлээн авагч зүү 1> Arduino нано дижитал зүү 4

IR хүлээн авагчийн зүү 2> Arduino нано 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 // улаан гэрлийг бууруулна #define Rdown2 3772813933 // улаан тод байдлыг бууруулна #тодорхойлох Gup1 3772797613 // ногоон гэрлийг дээшлүүлдэг #тодорхойлох Gup2 3774104872 // ногоон гэрлийг дээшлүүлдэг #Тодруулах Gdown1 3772834333 // ногоон гэрлийг бууруулдаг #Тодорхойлсон Gdown2 1784778242 // ногоон гэрлийг бууруулдаг #Тодорхойлох Bup1 3980777284 // болгодог тод байдал дээшлэх #Bup2 тодорхойлох 3772781293 // цэнхэр тод байдлыг дээшлүүлнэ #Тодруулах Bdown1 3772801693 // цэнхэр тод байдлыг бууруулна #Тодруулах Bdown2 3361986248 // цэнхэр гэрлийг бууруулна // ТАЙЛБАР: Та тоонуудаа алсын зайнаас солих ёстой !!! ! // Надад Rup1 ба Rup2 гэх мэт 2 давхардсан түлхүүр бий. Учир нь // та нэг товчлуур дарахад миний алсын удирдлага 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); Цуваа эхлэх (9600); } void loop () {if (irrecv.decode (& results)) {long int decCode = results.value; switch (results.value) {/////////// RED case Rup1: Rval = Rval + 10; завсарлага; тохиолдол Rup2: Rval = Rval + 10; завсарлага; тохиолдол Rdown1: Rval = Rval - 10; завсарлага; тохиолдол Rdown2: Rval = Rval - 10; завсарлага; //////////// НОГООН тохиолдол Gup1: Gval = Gval + 10; завсарлага; тохиолдол Gup2: Gval = Gval + 10; завсарлага; тохиолдол Gdown1: Gval = Gval - 10; завсарлага; тохиолдол Gdown2: Gval = Gval - 10; завсарлага; ///////////// BLUE case Bup1: Bval = Bval + 10; завсарлага; тохиолдолд Bup2: Bval = Bval + 10; завсарлага; тохиолдол Bdown1: Bval = Bval - 10; завсарлага; тохиолдол Bdown2: Bval = Bval - 10; завсарлага; /////////////////////////////////////////////////////////////////////// юм. } if (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 (үр дүнгийн утга); Микросекунд (1); }

Алхам 4: дуусгах

Дуусгаж байна
Дуусгаж байна
Дуусгаж байна
Дуусгаж байна
Дуусгаж байна
Дуусгаж байна

Би бүрхүүл хийх ажлыг сайн хийгээгүй. Миний хийсэн зүйл бол зүгээр л соронзон хальсны бичлэг хийх явдал юм, гэхдээ би үүнийг аль болох жижиг болгохыг хичээсэн.

Хэрэв танд ямар нэгэн асуулт эсвэл алдаа байгаа бол надад хэлэхээ мартуузай, би алдаагаа засахад тань туслахын тулд чадах бүхнээ хийх болно. уншсанд баярлалаа.

Зөвлөмж болгож буй: