Bu projede 8x8 LED matris ekran tasarlayacağız, bunun için Arduino Uno ile 8x8 LED matris modülünü arayüzleyeceğiz. Bir 8x8 LED matrisi, bir matris biçiminde düzenlenmiş 64 LED (Işık Yayan Diyotlar) içerir, dolayısıyla LED matrisi adı verilir.
Bu matrisler 64 LED'in çevrilmesiyle yapılabilir, ancak bu işlem zaman alıcıdır. Şimdi bir gün aşağıdaki resimde gösterildiği gibi kompakt formlarda mevcutturlar. Bu kompakt modüller farklı boyutlarda ve birçok renkte mevcuttur. Modülün maliyeti 64 LED'in maliyeti ile aynıdır, bu nedenle hobiler için üzerinde çalışmak en kolay olanıdır.
Çıplak LED matrisinde 8 ortak pozitif ve başka 8 ortak negatif olmak üzere 16 pin çıkışı vardır. Bu matrisi doğrudan bir UNO'ya bağlamak için, UNO'ya 16 pin ayırmamız gerekiyor. UNO'da düşük çıkış pinleri ile 16 PIN'i ayıramayız. Yani bu matrisi bir sürücü çipine bağlamamız gerekiyor. Bu sürücü yongası, matris ile birlikte aşağıdaki şekilde gösterilen bir set olarak gelir.
Bu modül, alfabeleri, dolayısıyla matris ekranını görüntülemek için Arduino ile arayüzlenecektir. Öncelikle LED matrisini Arduino ile arayüzlemek için, LED MATRIX için özel olarak tasarlanmış bir kitaplık indirmemiz gerekiyor. Bu kitaplık şu adreste mevcut olacaktır:
Zip dosyasını indirdikten sonra, içeriği ARDUINO klasörüne çıkartın. (ARDUINO NIGHTLY yazılımının kurulu olduğu yerel diske gidin, klasörü açın, "kütüphane" adlı klasörü arayın, o klasördeki zip dosyasının içeriğini çıkarın, programı yeniden başlatın, matris arayüzü için özellikleri kullanabileceksiniz)
Gerekli Bileşenler
Donanım: Arduino Uno, Güç kaynağı (5v), 100 uF kapasitör (güç kaynağına bağlı)
Yazılım: Arduino Nightly
Devre Şeması ve Açıklama
Arduino Uno ile LED matrix modülü arasında yapılan bağlantılar aşağıdaki tabloda gösterilmiştir.
PIN2 ------------------ LED modülünün LOAD veya CHIPSELECT
PIN3 ------------------ LED modülünün SAATİ
PIN4 ------------------ LED modülünün DATAIN
+ 5V ------------------ VCC LED modülü
GND ------------------ GND LED modülü
8 * 8 LED matris ekranın devre şemasıdır, Şekil altında gösterilmiştir.
Şimdi yeni kütüphane kurarak denilen özel futures'ları kullanmak için programda birkaç komut kurmamız gerekiyor ve aşağıda belirtilmişti.
#include "LedControlMS.h" #define NBR_MTX 1 LedControl lc = LedControl (4,3,2, NBR_MTX); lc.writeString (0, "CIRCUITDIGEST"); lc.clearAll (); |
Öncelikle, bir LED matrisini Arduino Uno'ya arayüzlemek için başlık dosyasını aramamız gerekiyor. Yani "#include" LedControlMS.h "", bu başlık dosyası kitaplığın özel işlevlerini çağırır.
Bu modüllerle çok sayıda modülü seri olarak bağlayıp tek bir ekran olarak birlikte programlayabildiğimiz bir özelliğimiz var. Bu özellik, aynı anda birden fazla karakter görüntüleyebilen bir ekran birimine ihtiyacımız olduğunda işe yarar. Bu yüzden denetleyiciye kaç ekran bağladığımızı söylememiz gerekiyor.
Bu modülde başlıca üç pin vardır; UNO'dan modüle veri akışı bu üç pin ile gerçekleşir. Pinler DATAIN (veri alma pini), CLOCK (saat pini) ve CHIPSELECT (komut alma pini) 'dir.
Şimdi UNO'ya bu pinleri nereye bağladığımızı söylememiz gerekiyor. Bu, “LedControl lc = LedControl (4,3,2, NBR_MTX) komutu ile yapılır; ”. "Lc.writeString (0," CIRCUITDIGEST ");", bu komut, LED matrisinde hangi karakterlerin görüntüleneceğini UNO'ya bildirmek için kullanılır. Yukarıdaki ile ekran, her karakter bir kez olmak üzere "CIRCUITDIGEST" gösterir.
Başka bir veri göndermeden önce ekran yongası belleğini temizlemeliyiz, bu ”lc.clearAll ();" komutu ile yapılır.
Bu şekilde 8x8 LED matrisini Arduino Uno'ya kolayca arayüzleyebiliriz.