8x8 RGB LED matrix yapıp Arduino ile kontrol etmek istiyorum ama elimdeki LED'ler ortak kathot ve internette arastırdım. Ortak kathotla yapan yok, acaba yapılabilir mi, yapılırsa nasıl yapılır?
// DENEME KODU.
#define LED1 2 // birinci led 2. pin.
#define LED2 3 // ikinci led 3. pin.
#define LED3 4 // üçüncü led 4. pin.
void setup()
{
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT); // led pinleri çıkış olarak atandı.
pinMode(LED3, OUTPUT);
digitalWrite(LED1, 1);
digitalWrite(LED2, 1); // led pinlerine high (5v) verildi bu ledlerin sönük kalmasını sağlar.
digitalWrite(LED3, 1);
}
void loop()
{
digitalWrite(LED1, 0); // birinci ledi yak.
delay(1000); // bir saniye bekle.
digitalWrite(LED1, 1); // birinci ledi söndür.
delay(1000); // bir saniye bekle.
digitalWrite(LED2, 0); // ikinci ledi yak.
delay(1000); // bir saniye bekle.
digitalWrite(LED2, 1); // ikinci ledi söndür.
delay(1000); // bir saniye bekle.
digitalWrite(LED3, 0); // üçüncü ledi yak.
delay(1000); // bir saniye bekle.
digitalWrite(LED3, 1); // üçüncü ledi söndür.
delay(1000); // bir saniye bekle.
}
çok tessekür ederimYapabilirsiniz sadece kodda farklılık yapmanız lazım.
Normalde anot ortak olur ve high sinyali vererek yakarsınız LED'leri.
Fakat katotta biraz farklı aslında tam tersi, ortak uçları 330ohmluk direnç ile 5V'ye bağlayın, diğer uçları 0 ve 1 pinleri hariç pinlere dizin.
Yakmak istediğiniz LED'in pinine Low sinyali gönderin ama en başta Void setup kısmında LED bağlı bütün pinleri High'e çekin.
Şöyle Basic bir kod yazdım mantığı anlamanız açısından.
C++:// DENEME KODU. #define LED1 2 // birinci led 2. pin. #define LED2 3 // ikinci led 3. pin. #define LED3 4 // üçüncü led 4. pin. void setup() { pinMode(LED1, OUTPUT); pinMode(LED2, OUTPUT); // led pinleri çıkış olarak atandı. pinMode(LED3, OUTPUT); digitalWrite(LED1, 1); digitalWrite(LED2, 1); // led pinlerine high (5v) verildi bu ledlerin sönük kalmasını sağlar. digitalWrite(LED3, 1); } void loop() { digitalWrite(LED1, 0); // birinci ledi yak. delay(1000); // bir saniye bekle. digitalWrite(LED1, 1); // birinci ledi söndür. delay(1000); // bir saniye bekle. digitalWrite(LED2, 0); // ikinci ledi yak. delay(1000); // bir saniye bekle. digitalWrite(LED2, 1); // ikinci ledi söndür. delay(1000); // bir saniye bekle. digitalWrite(LED3, 0); // üçüncü ledi yak. delay(1000); // bir saniye bekle. digitalWrite(LED3, 1); // üçüncü ledi söndür. delay(1000); // bir saniye bekle. }
Arkadaşın ledleri RGB bu sadece tek renk için işe yarar.Yapabilirsiniz sadece kodda farklılık yapmanız lazım.
Normalde anot ortak olur ve high sinyali vererek yakarsınız LED'leri.
Fakat katotta biraz farklı aslında tam tersi, ortak uçları 330ohmluk direnç ile 5V'ye bağlayın, diğer uçları 0 ve 1 pinleri hariç pinlere dizin.
Yakmak istediğiniz LED'in pinine Low sinyali gönderin ama en başta Void setup kısmında LED bağlı bütün pinleri High'e çekin.
Şöyle Basic bir kod yazdım mantığı anlamanız açısından.
C++:// DENEME KODU. #define LED1 2 // birinci led 2. pin. #define LED2 3 // ikinci led 3. pin. #define LED3 4 // üçüncü led 4. pin. void setup() { pinMode(LED1, OUTPUT); pinMode(LED2, OUTPUT); // led pinleri çıkış olarak atandı. pinMode(LED3, OUTPUT); digitalWrite(LED1, 1); digitalWrite(LED2, 1); // led pinlerine high (5v) verildi bu ledlerin sönük kalmasını sağlar. digitalWrite(LED3, 1); } void loop() { digitalWrite(LED1, 0); // birinci ledi yak. delay(1000); // bir saniye bekle. digitalWrite(LED1, 1); // birinci ledi söndür. delay(1000); // bir saniye bekle. digitalWrite(LED2, 0); // ikinci ledi yak. delay(1000); // bir saniye bekle. digitalWrite(LED2, 1); // ikinci ledi söndür. delay(1000); // bir saniye bekle. digitalWrite(LED3, 0); // üçüncü ledi yak. delay(1000); // bir saniye bekle. digitalWrite(LED3, 1); // üçüncü ledi söndür. delay(1000); // bir saniye bekle. }
Arkadaşın LED'leri RGB bu sadece tek renk için işe yarar.
Arkadaşın LED'leri RGB bu sadece tek renk için işe yarar.
Rgb ledi tek renk olarak kullanmak istiyorsanız tabiki yarar ama geriye kalan 16581374 rengi kullanamazsınız.Hayır RGB için de yarar.
Ortak katota artı verecek. Diğer pinlere high verirse söner Low verirse yanar.
Deneyebilirsiniz. Bende hem ortak anot hem de ortak katot RGB var ve ikisini de kullanabiliyorum.
Kodda yazan birinci ikinci LED kısmı RGB LED'in bacakları için.
Çok tessekür ederim.
Ama 8x8 olduğu icin 64 pin lazım olmaz mı atmega 328p üzerinde o kadar pin yok.
Tam tersi bu anot için doğru.Ortak katota artı verecek. Diğer pinlere high verirse söner Low verirse yanar.
Tam tersi bu anot için doğru.