İçindekiler:
- Gereçler
- 1. Adım: Uzaktan Kumandanızı Seçin
- Adım 2: Önce Bir Ekmek Tahtası Üzerine Yapın (Gerekli Değil Ama Tavsiye Edilir)
- Adım 3: Kod
- Adım 4: Bitirme
- Adım 5: TEST
Video: Arduino Nano Tabanlı IR Kontrollü RGB LED: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Bu küçük projede size IR uzaktan kumanda ile kontrol edilen ve USB kablosu ile çalışan Arduino tabanlı RGB LED'i nasıl yaptığımı göstermek istiyorum.
Gereçler
1. RGB LED'i
2. IR alıcısı
3. USB kablosu
4. Arduino nano
5. IR uzaktan kumanda
6. bazı kablolar
7. 50-100 ohm dirençler (47 ohm dirençler kullanıyorum ama pek bir fark yok)
1. Adım: Uzaktan Kumandanızı Seçin
Yani hangi kumandayı kullanacağınız sizin kararınız, ancak kumandanızda kullanmak istediğiniz 6 tuş olmalı. 2 adet Kırmızı, 2 adet Yeşil ve 2 adet Mavi içindir.
Adım 2: Önce Bir Ekmek Tahtası Üzerine Yapın (Gerekli Değil Ama Tavsiye Edilir)
Şimdi devreyi bir breadboard üzerinde kurun
bağlantılar:
RGB LED GND > Arduino nano GND
RGB LED Kırmızı > Arduino nano Dijital pin 5
RGB LED Yeşil > Arduino nano Dijital pin 6
RGB LED Mavi > Arduino nano Dijital pin 9
USB GND > Arduino nano GND
USB 5v > Arduino nano 5v
IR alıcı pin 1 > Arduino nano Dijital pin 4
IR alıcı pimi 2 > Arduino nano GND
IR alıcı pin 3 > Arduino nano 5v
(tüm bağlantılar yukarıda gösterilmiştir)
(RGB LED'in her bir renk pini dirençlere seri olarak bağlanır)
Adım 3: Kod
kod şudur:
İşte kullandığım kütüphane.
#Dahil etmek
int IR_Recv = 4; //IR alıcı pimi
int Rval = 0; int Gval = 0; int Bval = 0; int RvalDemo = 0; int GvalDemo = 0; int BvalDemo = 0; int R = 5; //Kırmızı pin int G = 6; //Yeşil pin int B = 9; //Blue pin #define Rup1 1976685926 //kırmızı parlaklığı artırır #define Rup2 3772818013 //kırmızı parlaklığı artırır #define Rdown1 3843765582 //kırmızı parlaklığı azaltır #define Rdown2 3772813933 //kırmızı parlaklığı azaltır #define Gup1 3772797613 //yeşil parlaklığı artırır #define Gup2 3774104872 //yeşil parlaklığı artırır #define Gdown1 3772834333 //yeşil parlaklığı azaltır #define Gdown2 1784778242 //yeşil parlaklığı azaltır #define Bup1 3980777284 //mavi yapar parlaklık artar #define Bup2 3772781293 //mavi parlaklığı artırır #define Bdown1 3772801693 //mavi parlaklığı azaltır #define Bdown2 3361986248 //mavi parlaklığı azaltır //NOT: UZAKTAN KUMANDA SAYILARINI DEĞİŞTİRMENİZ GEREKİR!!! ! // 2 çift anahtarım var, örneğin Rup1 ve Rup2. çünkü // bir tuşa bastığınızda uzaktan kumandam 2 sayı verir. // sizin durumunuzda, aynı sayıları Rup1 ve Rup2, Gup1 ve Gup2 ve benzeri yerlere koyabilirsiniz. //Bir tuşa bastığınızda Seri monitörde numara görünmelidir, //"#define" bölümüne yazmalısınız. IRrecv geçersiz(IR_Recv); decode_results sonuçları; geçersiz kurulum(){ TCCR2A = _BV(COM2A1) | _BV(COM2B1) | _BV(WGM21) | _BV(WGM20); TCCR2B = _BV(CS22); irrecv.enableIRIn(); pinMode(R, ÇIKIŞ); pinMode(G, ÇIKIŞ); pinMode(B, ÇIKIŞ); Seri.başla(9600); } void loop(){ if (irrecv.decode(&results)){ long int decCode = sonuçlar.değer; switch (results.value){ ///////////RED case Rup1: Rval = Rval + 10; kırmak; durum Rup2: Rval = Rval + 10; kırmak; durum Rdown1: Rval = Rval - 10; kırmak; durum Rdown2: Rval = Rval - 10; kırmak; ///////////YEŞİL durum Gup1: Gval = Gval + 10; kırmak; durum Gup2: Gval = Gval + 10; kırmak; durum Gdown1: Gval = Gval - 10; kırmak; durum Gdown2: Gval = Gval - 10; kırmak; ////////////MAVİ durum Bup1: Bval = Bval + 10; kırmak; durum Bup2: Bval = Bval + 10; kırmak; durum Bdown1: Bval = Bval - 10; kırmak; durum Bdown2: Bval = Bval - 10; kırmak; /////////////////////////////////// } irrecv.resume(); } if (Rval > 255) (Rval = 255); if (Rval 255) (Gval = 255); if (Gval 255) (Bval = 255); if (Bval < 0) (Bval = 0); analogWrite(R, Rval); analogWrite(G, Gval); analogWrite(B, Bval); Serial.println(sonuçlar.değer); gecikmeMikrosaniye(1); }
Adım 4: Bitirme
İyi bir kasa işi yapmadım. Tek yaptığım sadece bantlamak, ama mümkün olduğunca küçültmeye çalıştım.
Herhangi bir sorunuz veya herhangi bir hatanız varsa, bana söyleyin, hatayı düzeltmenize yardımcı olmak için elimden geleni yapacağım. okuduğunuz için teşekkürler.
Önerilen:
Alexa Tabanlı Ses Kontrollü Roketatar: 9 Adım (Resimli)
Alexa Tabanlı Ses Kontrollü Roketatar: Kış mevsimi yaklaşırken; ışık festivalinin kutlandığı yılın o zamanı gelir. Evet, dünya çapında kutlanan gerçek bir Hint festivali olan Diwali'den bahsediyoruz. Bu yıl, Diwali çoktan bitti ve insanları görmek
Arduino Tabanlı Ses Kontrollü IOT Röle Anahtarı (Google Home ve Alexa Destekli): 11 Adım
Arduino Tabanlı Ses Kontrollü IOT Röle Anahtarı (Google Home & Alexa Destekli): Bu proje, Arduino tabanlı, ses kontrollü, IOT röle anahtarının nasıl yapılacağını açıklar. Bu, iOS ve Android için bir uygulama kullanarak uzaktan açıp kapatabileceğiniz, ayrıca IFTTT'ye bağlayabileceğiniz ve Goog kullanarak sesinizle kontrol edebileceğiniz bir röledir
Arduino Tabanlı Temassız Kızılötesi Termometre - Arduino Kullanan IR Tabanlı Termometre: 4 Adım
Arduino Tabanlı Temassız Kızılötesi Termometre | Arduino Kullanan IR Tabanlı Termometre: Merhaba arkadaşlar, bu talimatta arduino kullanarak temassız bir Termometre yapacağız. Bazen sıvının/katının sıcaklığı çok yüksek veya çok düşük olduğundan, onunla temas kurmak ve okumak zordur. o sahnede sıcaklık
ESP32 Tabanlı Web Sunucusu Kullanan İnternet Kontrollü LED: 10 Adım
ESP32 Tabanlı Web Sunucusu Kullanan İnternet Kontrollü LED: Projeye genel bakış Bu örnekte, dünyanın her yerinden erişilebilen LED durumunu kontrol etmek için ESP32 tabanlı bir web sunucusunun nasıl yapılacağını anlayacağız. Bu proje için bir Mac bilgisayara ihtiyacınız olacak, ancak bu yazılımı bir bilgisayar üzerinde bile çalıştırabilirsiniz
Gesture Hawk: Görüntü İşleme Tabanlı Arayüz Kullanan El Hareketi Kontrollü Robot: 13 Adım (Resimlerle)
Gesture Hawk: Görüntü İşleme Tabanlı Arayüzü Kullanan El Hareketi Kontrollü Robot: Gesture Hawk, TechEvince 4.0'da basit bir görüntü işleme tabanlı insan-makine arayüzü olarak sergilendi. Faydası, farklı ortamlarda çalışan robotik arabayı kontrol etmek için bir eldiven dışında hiçbir ek sensör veya giyilebilir cihaz gerekmemesi gerçeğinde yatmaktadır