RGB led'ler red (kırmızı), green (yeşil) ve blue (mavi) renklerin kombinasyonları ile tüm renkleri (siyah hariç) üretebilme yeteneğine sahiptir. Biz de RGB led ile bir örnek hazırlayalım ve bize sürekli olarak farklı renklerde ışık vermesini sağlayalım. Bu örnekte kullanacağımız Arduino component'leri:
- Arduino Uno R3
- Breadboard
- RGB Led
- 3 adet 220 ohm direnç
- 4 adet jumper kablo
RGB Led'lerin bir bacağı katot (eksi), diğer 3 bacağı ise 3 farklı renge güç vermenizi sağlayan anot (artı) bacaklar. Bu 3 bacağı ayrı deliklere sokarak ayrı dirençlerle beslememiz gerekiyor. Hazırladığım devre tasarımı da aşağıdaki gibi oldu:
Not: Tinkercad'de önemli bir hata yaparak ne olduğunu bulmakta yarım saate yakın zaman kaybettim. Eklediğiniz dirençlerin güçlerine benim gibi dikkat etmezseniz aşırı dirençten dolayı aslında doğru kurgulanmış olan devrelerde hiç ışık olmayabilir. Direnç birimini kohm yerine ohm seçimi yaparsanız bu problem de düzeliyor.
Kodlarımızı da eklediğimizde RGB led'imiz bize sürekli değişen renklerde ışık vermiş olacak.
Not: Bir sonraki örnekte Arduino'da rasgele sayılar üretmeyi göstereceğim ve bu örneği de tamamen rasgele renkler üretecek şekilde güncelleyerek tekrar paylaşacağım.
#define ledYesil 11
#define ledMavi 12
#define ledKirmizi 13
int kirmizi = 0;
int yesil = 80;
int mavi = 120;
void setup() {
pinMode(ledYesil, OUTPUT);
pinMode(ledMavi, OUTPUT);
pinMode(ledKirmizi, OUTPUT);
}
void loop() {
for (int i=0; i<=255; i++)
{
kirmizi = (kirmizi + 1) % 255;
yesil = (yesil + 1) % 255;
mavi = (mavi + 1) % 255;
}
analogWrite(ledYesil, yesil);
analogWrite(ledMavi, mavi);
analogWrite(ledKirmizi, kirmizi);
delay(10);
}
Sonuç: