İçindekiler:

Arduino Kullanarak Led Matrisi Kontrol Etme: 5 Adım
Arduino Kullanarak Led Matrisi Kontrol Etme: 5 Adım

Video: Arduino Kullanarak Led Matrisi Kontrol Etme: 5 Adım

Video: Arduino Kullanarak Led Matrisi Kontrol Etme: 5 Adım
Video: Arduino Uno R3 ile Saat Ekran ve Şerit led kontrolu 2024, Temmuz
Anonim
Arduino Kullanarak Led Matrisi Kontrol Etme
Arduino Kullanarak Led Matrisi Kontrol Etme
Arduino Kullanarak Led Matrisi Kontrol Etme
Arduino Kullanarak Led Matrisi Kontrol Etme

Selam dostum.

Bu yazımda sizlere Arduino ile Led Matrix nasıl kullanılır onu göstereceğim.

Led Matrix, diziler şeklinde bir LED koleksiyonudur. Led Matrisler, türüne bağlı olarak çeşitli sütun ve satırlara sahiptir. Birkaç LED'i belirli bir kombinasyonla sunarak, Led matrisi bir dizi karakter, harf, sembol ve diğerlerini görüntüleyebilir. Led Matrix'in diğer adı Dot Matrix'tir.

Led Matrix'in çalışma prensibi dün oluşturduğum "7 Segment Display" ile aynı. İkisi arasındaki fark, yalnızca görünüm biçimindedir.

Adım 1: Led Matrix'in Özellikleri

Led Matrix'in Özellikleri
Led Matrix'in Özellikleri

İşte Led Matrix'in özellikleri:

  • LED sayısı: 64
  • Hat sayısı: 8
  • Sütun sayısı: 8
  • Çalışma voltajı: 4.7V - 5V DC
  • Çalışma Akımı: 320mA
  • Maksimum Çalışma Akımı: 2A

2. Adım: Gerekli Bileşenler

Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler

Gerekli bileşenler:

  • Led Matriks
  • Arduino Nano
  • Jumper Tel
  • USB mini
  • Proje tahtası

Gerekli Kitaplık:

LedKontrol

Arduino IDE'ye kütüphane eklemek için "Arduino'ya Kütüphane Ekleme" başlıklı bu makaleyi inceleyebilirsiniz.

Adım 3: Led Matrix'i Arduino IDE'ye bağlayın

Led Matrix'i Arduino IDE'ye bağlayın
Led Matrix'i Arduino IDE'ye bağlayın

Aşağıdaki açıklamaya bakın veya yukarıdaki resme bakın:

Arduino'ya Led Matris

VCC ==> +5V

GND ==> GND

DIN ==> D6

CS ==> D7

CLK ==> D8

Adım 4: Programlama

Programlama
Programlama

Bu, led matrisini denemek için kullanılabilecek örnek bir çizimdir:

//Her zaman #include "LedControl.h" kitaplığını dahil etmeliyiz

/*

Şimdi çalışmak için bir LedControl'e ihtiyacımız var. ***** Bu pin numaraları muhtemelen donanımınızla çalışmayacaktır ***** pin 6 DataIn'e bağlı pin 8 CLK'ye bağlı pin 7 LOAD'a bağlı elimizde sadece tek bir MAX72XX var. */

LedControl lc=LedControl(6, 8, 7, 1);

/* ekran güncellemeleri arasında her zaman biraz bekleriz */

imzasız uzun gecikme süresi=100;

geçersiz kurulum() {

/* MAX72XX başlangıçta güç tasarrufu modunda, bir uyandırma çağrısı yapmamız gerekiyor */ lc.shutdown(0, false); /* Parlaklığı orta değerlere ayarlayın */ lc.setIntensity(0, 8); /* ve ekranı temizle */ lc.clearDisplay(0); }

/*

Bu yöntem, matris üzerinde birbiri ardına "Arduino" kelimesinin karakterlerini gösterecektir. (tüm karakterleri görebilmek için en az 5x7 led gerekir) */ void writeArduinoOnMatrix() { /* karakterlerin verileri burada */ byte a[5]={B01111110, B10001000, B10001000, B10001000, B01111110}; bayt r[5]={B00111110, B00010000, B00100000, B00100000, B00010000}; bayt d[5]={B00011100, B00100010, B00100010, B00010010, B11111110}; bayt u[5]={B00111100, B00000010, B00000010, B00000100, B00111110}; bayt i[5]={B00000000, B00100010, B10111110, B00000010, B00000000}; bayt n[5]={B00111110, B00010000, B00100000, B00100000, B00011110}; bayt o[5]={B00011100, B00100010, B00100010, B00100010, B00011100};

/* şimdi onları küçük bir gecikmeyle tek tek göster */

lc.setRow(0, 0, a[0]); lc.setRow(0, 1, a[1]); lc.setRow(0, 2, a[2]); lc.setRow(0, 3, a[3]); lc.setRow(0, 4, a[4]); gecikme (gecikme süresi); lc.setRow(0, 0, r[0]); lc.setRow(0, 1, r[1]); lc.setRow(0, 2, r[2]); lc.setRow(0, 3, r[3]); lc.setRow(0, 4, r[4]); gecikme (gecikme süresi); lc.setRow(0, 0, d[0]); lc.setRow(0, 1, d[1]); lc.setRow(0, 2, d[2]); lc.setRow(0, 3, d[3]); lc.setRow(0, 4, d[4]); gecikme (gecikme süresi); lc.setRow(0, 0, u[0]); lc.setRow(0, 1, u[1]); lc.setRow(0, 2, u[2]); lc.setRow(0, 3, u[3]); lc.setRow(0, 4, u[4]); gecikme (gecikme süresi); lc.setRow(0, 0, i[0]); lc.setRow(0, 1, i[1]); lc.setRow(0, 2, i[2]); lc.setRow(0, 3, i[3]); lc.setRow(0, 4, i[4]); gecikme (gecikme süresi); lc.setRow(0, 0, n[0]); lc.setRow(0, 1, n[1]); lc.setRow(0, 2, n[2]); lc.setRow(0, 3, n[3]); lc.setRow(0, 4, n[4]); gecikme (gecikme süresi); lc.setRow(0, 0, o[0]); lc.setRow(0, 1, o[1]); lc.setRow(0, 2, o[2]); lc.setRow(0, 3, o[3]); lc.setRow(0, 4, o[4]); gecikme (gecikme süresi); lc.setRow(0, 0, 0); lc.setRow(0, 1, 0); lc.setRow(0, 2, 0); lc.setRow(0, 3, 0); lc.setRow(0, 4, 0); gecikme (gecikme süresi); }

/*

Bu fonksiyon arka arkaya birkaç Led yakar. Desen her satırda tekrarlanacaktır. Desen, satır numarasıyla birlikte yanıp sönecektir. 4. satır (index==3) 4 kez yanıp sönecek vs. */ void rows() { for(int row=0;row<8;row++) { delay(delaytime); lc.setRow(0, satır, B10100000); gecikme (gecikme süresi); lc.setRow(0, satır, (bayt)0); for(int i=0;i

/*

Bu fonksiyon, bir sütundaki bazı Ledleri yakar. Desen her sütunda tekrarlanacaktır. Desen, sütun numarasıyla birlikte yanıp sönecektir. 4 numaralı sütun (index==3) 4 kez yanıp sönecek vb. */ void column() { for(int col=0;col<8;col++) { delay(delaytime); lc.setColumn(0, sütun, B10100000); gecikme (gecikme süresi); lc.setColumn(0, col, (byte)0); for(int i=0;i

/*

Bu fonksiyon matris üzerindeki her Led'i yakar. Led, sıra numarası ile birlikte yanıp sönecektir. 4 numaralı satır (index==3) 4 kez yanıp söner vb. */ void single() { for(int row=0;row<8;row++) { for(int col=0;col<8;col++) { gecikme (gecikme süresi); lc.setLed(0, satır, sütun, doğru); gecikme (gecikme süresi); for(int i=0;i

boşluk döngüsü () {

writeArduinoOnMatrix(); satırlar(); sütunlar(); bekar(); }

Dosya olarak da sunuyorum:

Adım 5: Keyfini Çıkarın

tadını çıkarın
tadını çıkarın

Bu, led matrix üzerine bir eğitimdi.

Bu makaleyi okuduğunuz için teşekkür ederiz. bir sonraki yazıda görüşmek üzere.

Önerilen: