Önceki örnekte (Arduino'da RGB Led ile farklı renklerde ışık vermek) rgb led ile üç farklı renk ile bir renk paleti oluşturduk ve bu renklerin şiddetlerini değiştirerek for döngüsü içerisinde farklı renkler elde ettik. Ancak bu örnekte tam olarak rastgele renkler elde ettiğimiz söylenemez çükü bir for döngüsü içerisinde aslında belli bir döngüyü takip ettik ve başa döndük. Tam anlamıyla farklı ve rasgele renkler elde edebilmek için ise Arduino'da rasgele sayılar üretmeyi öğrenmemiz gerekiyor.
Arduino'da iki sayı arasında (alt sınır ve üst sınır vererek) rasgele sayılar üretmek için kullanmamız gereken kod yapısı şu şekilde:
random(altsinir, ustsinir)
Şimdi bu bilgiyi RGB Led ışık yakma örneğimize uyarlayarak 3 farklı değişken için 0 ile 255 arası rasgele sayılar üretelim ve 10 milisaniyelik aralıklarla rgb ışığımızın rengini rasgele olarak değiştirelim.
Kodlar:
#define ledYesil 11
#define ledMavi 12
#define ledKirmizi 13
int kirmizi = 0;
int yesil = 0;
int mavi = 0;
void setup() {
pinMode(ledYesil, OUTPUT);
pinMode(ledMavi, OUTPUT);
pinMode(ledKirmizi, OUTPUT);
}
void loop() {
kirmizi = random(0, 255);
yesil = random(0, 255);
mavi = random(0, 255);
analogWrite(ledYesil, yesil);
analogWrite(ledMavi, mavi);
analogWrite(ledKirmizi, kirmizi);
delay(10);
}
Sonuç: