Arduino 37 parça sensör setinin parçalarından biri olan KY-016 kodlu 5mm RGB LED modülü ile projelerinize renk katabilirsiniz.
KY-016 RGB LED modülü Arduino tarafında 4 bağlantı pinine sahip ve soldan sağa B, G, R ve – olarak işaretlenmiştir. B mavi LED’i, G yeşil LED’i ve R kırmızı LED’in çıkışıdır. – çıkışı ise GND pinine bağlanır.
UYARI: KY-016 RGB LED modülünü kullanırken her bir LED ile pin arasına 220 ohm civarı bir direnç bağlamak gerekir. Kısa süreli (birkaç dakika) yapacağınız denemeler için direnç bağlamamayı tercih edebilirsiniz.
PWM yöntemi ile her bir LED’i 256 farklı seviyede (0-255) yakarak istediğimiz rengi elde etmemiz mümkün.
Aşağıdaki sketch 9,10 ve 11 numaralı PWM özellikli dijital pine bağlanan RGB LED’i farklı renklerde yakar ve bir renk geçiş efekti oluşturur.
Arduino’da iyi olmak için öncelikle elektronikte iyi olmak gerekir. Türkiye’nin en iyi temel elektronik eğitim seti ARDUINO ÖNCESİ TEMEL ELEKTRONİK EĞİTİM VE DENEY SETİ‘ni keşfedin. Gereksiz bilgilerden arındırılmış basit ve eğlenceli anlatımla ELEKTRONİK öğrenin ve Arduino’ya METE HOCA farkıyla güçlü başlayın!
Sketch kodunu kopyalamak için pencerenin sağ üst köşesindeki butona tıklayabilir veya buraya tıklayarak ZIP dosyası olarak indirebilirsiniz. Setin diğer modülleri hakkındaki açıklamalar ve örnek sketch kodlarına ulaşmak için buraya tıklayın.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
/* Arduino KY-016 5mm RGB LED Modülü Arduino 37 parça sensör setinin bir parçası olan 5mm RGB LED modülünün örnek sketch'idir. RGB LED'i teker teker ve farklı renklerde yakarak geçiş efekti oluşturur. Setin diğer parçalarının açıklama ve örnek kodlarına web sitemizden ulaşabilirsiniz. Oluşturma: 11 Ekim 2021 / Mete Hoca https://www.metehoca.com/ */ int red = 9; // (R) Kırmızı LED bağlantısı int green = 10; // (G) Yeşil LED bağlantısı int blue = 11; // (B) Mavi LED bağlantısı // (-) pinini Arduino üzerindeki GND'ye bağlıyoruz void setup() { pinMode(red, OUTPUT); // red pinini çıkış olarak ayarlıyoruz pinMode(green, OUTPUT); // green pinini çıkış olarak ayarlıyoruz pinMode(blue, OUTPUT); // blue pinini çıkış olarak ayarlıyoruz } void loop() { // İlk bölümde her bir LED'i teker teker yakıp söndürüyoruz // Her bir LED'e 0-255 arası değer verebiliriz // 0 LED'i söndürürken, 255 en parlak şekilde yanmasını sağlar analogWrite(blue, 255); // Mavi LED'i yakıyoruz analogWrite(green, 0); // Yeşil LED'i söndürüyoruz analogWrite(red, 0); // Kırmızı LED'i söndürüyoruz delay(1000); // Biraz bekliyoruz analogWrite(blue, 0); // Mavi LED'i söndürüyoruz analogWrite(green, 255); // Yeşil LED'i yakıyoruz analogWrite(red, 0); // Kırmızı LED'i söndürüyoruz delay(1000); // Biraz bekliyoruz analogWrite(blue, 0); // Mavi LED'i söndürüyoruz analogWrite(green, 0); // Yeşil LED'i söndürüyoruz analogWrite(red, 255); // Kırmızı LED'i yakıyoruz delay(1000); // Biraz bekliyoruz // İkinci bölümde renkleri geçişli olarak yakıyoruz // LED'lere sırayla 0-255 arasında farklı değerler veriyoruz for(int x = 255; x > 0; x--) { // 255'ten 0'a geri sayan döngümüzü kurduk analogWrite(blue, x); // Mavi LED'in değerini doğrudan x olarak yazıyoruz analogWrite(green, 255 - x); // Yeşil LED'in değerini ters olarak yazıyoruz analogWrite(red, 128 - x); // Kırmızı LED'in değerini ise ara değerlerde gezdiriyoruz delay(5); // Renk değişiklikleri arasında kısa bir bekleme yapalım } for(int x = 0; x < 255; x++) { // 0'dan 255'e ileri sayan döngü ile renkleri geri sarıyoruz analogWrite(blue, x); // Mavi LED'in değerini doğrudan x olarak yazıyoruz analogWrite(green, 255 - x); // Yeşil LED'in değerini ters olarak yazıyoruz analogWrite(red, 128 - x); // Kırmızı LED'in değerini ise ara değerlerde gezdiriyoruz delay(5); // Renk değişiklikleri arasında kısa bir bekleme yapalım } } |