MAX7219 entegresi ve 8x8 LED Dot Matrix moduül kullanılarak oluşturulan kayan yazı devresi

 

İhtiyaç Listesi

Breadboard
Kablo (Jumper Wires) male to female ihtiyaç kadar tedarik edilmesi önerilir.
Kablo (Jumper Wires) male to male ihtiyaç kadar tedarik edilmesi önerilir.
MAX7219 LED Matrix Modül
Arduino UNO R3

 

Bağlantı Şeması

Öncelikle aşağıdaki linkten MaxMatrix kütüphane dosyasını indirerek arduino klasörünün içindeki libraries alt klasörünün içine atın.
MaxMatrix.zip

Ardından da aşağıdaki kod bloğunu kopyalayarak Arduino IDE derleyicisinin içine yapıştırın.

#include <MaxMatrix.h>
#include <avr/pgmspace.h>
 
 
PROGMEM const unsigned char CH[] = {
3, 8, B00000000, B00000000, B00000000, B00000000, B00000000, // space
1, 8, B01011111, B00000000, B00000000, B00000000, B00000000, // !
3, 8, B00000011, B00000000, B00000011, B00000000, B00000000, // "
5, 8, B00010100, B00111110, B00010100, B00111110, B00010100, // #
4, 8, B00100100, B01101010, B00101011, B00010010, B00000000, // $
5, 8, B01100011, B00010011, B00001000, B01100100, B01100011, // %
5, 8, B00110110, B01001001, B01010110, B00100000, B01010000, // &
1, 8, B00000011, B00000000, B00000000, B00000000, B00000000, // '
3, 8, B00011100, B00100010, B01000001, B00000000, B00000000, // (
3, 8, B01000001, B00100010, B00011100, B00000000, B00000000, // )
5, 8, B00101000, B00011000, B00001110, B00011000, B00101000, // *
5, 8, B00001000, B00001000, B00111110, B00001000, B00001000, // +
2, 8, B10110000, B01110000, B00000000, B00000000, B00000000, // ,
4, 8, B00001000, B00001000, B00001000, B00001000, B00000000, // -
2, 8, B01100000, B01100000, B00000000, B00000000, B00000000, // .
4, 8, B01100000, B00011000, B00000110, B00000001, B00000000, // /
4, 8, B00111110, B01000001, B01000001, B00111110, B00000000, // 0
3, 8, B01000010, B01111111, B01000000, B00000000, B00000000, // 1
4, 8, B01100010, B01010001, B01001001, B01000110, B00000000, // 2
4, 8, B00100010, B01000001, B01001001, B00110110, B00000000, // 3
4, 8, B00011000, B00010100, B00010010, B01111111, B00000000, // 4
4, 8, B00100111, B01000101, B01000101, B00111001, B00000000, // 5
4, 8, B00111110, B01001001, B01001001, B00110000, B00000000, // 6
4, 8, B01100001, B00010001, B00001001, B00000111, B00000000, // 7
4, 8, B00110110, B01001001, B01001001, B00110110, B00000000, // 8
4, 8, B00000110, B01001001, B01001001, B00111110, B00000000, // 9
2, 8, B01010000, B00000000, B00000000, B00000000, B00000000, // :
2, 8, B10000000, B01010000, B00000000, B00000000, B00000000, // ;
3, 8, B00010000, B00101000, B01000100, B00000000, B00000000, // <
3, 8, B00010100, B00010100, B00010100, B00000000, B00000000, // =
3, 8, B01000100, B00101000, B00010000, B00000000, B00000000, // >
4, 8, B00000010, B01011001, B00001001, B00000110, B00000000, // ?
5, 8, B00111110, B01001001, B01010101, B01011101, B00001110, // @
4, 8, B01111110, B00010001, B00010001, B01111110, B00000000, // A
4, 8, B01111111, B01001001, B01001001, B00110110, B00000000, // B
4, 8, B00111110, B01000001, B01000001, B00100010, B00000000, // C
4, 8, B01111111, B01000001, B01000001, B00111110, B00000000, // D
4, 8, B01111111, B01001001, B01001001, B01000001, B00000000, // E
4, 8, B01111111, B00001001, B00001001, B00000001, B00000000, // F
4, 8, B00111110, B01000001, B01001001, B01111010, B00000000, // G
4, 8, B01111111, B00001000, B00001000, B01111111, B00000000, // H
3, 8, B01000001, B01111111, B01000001, B00000000, B00000000, // I
4, 8, B00110000, B01000000, B01000001, B00111111, B00000000, // J
4, 8, B01111111, B00001000, B00010100, B01100011, B00000000, // K
4, 8, B01111111, B01000000, B01000000, B01000000, B00000000, // L
5, 8, B01111111, B00000010, B00001100, B00000010, B01111111, // M
5, 8, B01111111, B00000100, B00001000, B00010000, B01111111, // N
4, 8, B00111110, B01000001, B01000001, B00111110, B00000000, // O
4, 8, B01111111, B00001001, B00001001, B00000110, B00000000, // P
4, 8, B00111110, B01000001, B01000001, B10111110, B00000000, // Q
4, 8, B01111111, B00001001, B00001001, B01110110, B00000000, // R
4, 8, B01000110, B01001001, B01001001, B00110010, B00000000, // S
5, 8, B00000001, B00000001, B01111111, B00000001, B00000001, // T
4, 8, B00111111, B01000000, B01000000, B00111111, B00000000, // U
5, 8, B00001111, B00110000, B01000000, B00110000, B00001111, // V
5, 8, B00111111, B01000000, B00111000, B01000000, B00111111, // W
5, 8, B01100011, B00010100, B00001000, B00010100, B01100011, // X
5, 8, B00000111, B00001000, B01110000, B00001000, B00000111, // Y
4, 8, B01110001, B01001001, B01001001, B01000111, B00000000, // Z
2, 8, B01111111, B01000001, B00000000, B00000000, B00000000, // [
4, 8, B00000001, B00000110, B00011000, B01100000, B00000000, // \ backslash
2, 8, B01000001, B01111111, B00000000, B00000000, B00000000, // ]
3, 8, B00000010, B00000001, B00000010, B00000000, B00000000, // hat
4, 8, B01000000, B01000000, B01000000, B01000000, B00000000, // _
2, 8, B00000001, B00000010, B00000000, B00000000, B00000000, // `
4, 8, B00100000, B01010100, B01010100, B01111000, B00000000, // a
4, 8, B01111111, B01000100, B01000100, B00111000, B00000000, // b
4, 8, B00111000, B01000100, B01000100, B00101000, B00000000, // c
4, 8, B00111000, B01000100, B01000100, B01111111, B00000000, // d
4, 8, B00111000, B01010100, B01010100, B00011000, B00000000, // e
3, 8, B00000100, B01111110, B00000101, B00000000, B00000000, // f
4, 8, B10011000, B10100100, B10100100, B01111000, B00000000, // g
4, 8, B01111111, B00000100, B00000100, B01111000, B00000000, // h
3, 8, B01000100, B01111101, B01000000, B00000000, B00000000, // i
4, 8, B01000000, B10000000, B10000100, B01111101, B00000000, // j
4, 8, B01111111, B00010000, B00101000, B01000100, B00000000, // k
3, 8, B01000001, B01111111, B01000000, B00000000, B00000000, // l
5, 8, B01111100, B00000100, B01111100, B00000100, B01111000, // m
4, 8, B01111100, B00000100, B00000100, B01111000, B00000000, // n
4, 8, B00111000, B01000100, B01000100, B00111000, B00000000, // o
4, 8, B11111100, B00100100, B00100100, B00011000, B00000000, // p
4, 8, B00011000, B00100100, B00100100, B11111100, B00000000, // q
4, 8, B01111100, B00001000, B00000100, B00000100, B00000000, // r
4, 8, B01001000, B01010100, B01010100, B00100100, B00000000, // s
3, 8, B00000100, B00111111, B01000100, B00000000, B00000000, // t
4, 8, B00111100, B01000000, B01000000, B01111100, B00000000, // u
5, 8, B00011100, B00100000, B01000000, B00100000, B00011100, // v
5, 8, B00111100, B01000000, B00111100, B01000000, B00111100, // w
5, 8, B01000100, B00101000, B00010000, B00101000, B01000100, // x
4, 8, B10011100, B10100000, B10100000, B01111100, B00000000, // y
3, 8, B01100100, B01010100, B01001100, B00000000, B00000000, // z
3, 8, B00001000, B00110110, B01000001, B00000000, B00000000, // {
1, 8, B01111111, B00000000, B00000000, B00000000, B00000000, // |
3, 8, B01000001, B00110110, B00001000, B00000000, B00000000, // }
4, 8, B00001000, B00000100, B00001000, B00000100, B00000000, // ~
};
// ARDUINO BAGLANTILARI
int data = 8;    // DIN pin of MAX7219 module
int load = 9;    // CS pin of MAX7219 module
int clock = 10;  // CLK pin of MAX7219 module
 
int maxInUse = 3;  //KAC ADET MAX7219 BAGLAYACAKSINIZ
 
MaxMatrix m(data, load, clock, maxInUse); // define Library
 
byte buffer[10];
 
char string1[] = " BIRKAN GOCERLER    ";  // KAYDIRILACAK YAZI ALANI
 
 
void setup(){
  m.init(); // module MAX7219
  m.setIntensity(5); // LED PARLAKLIGI 0-15
}
 
void loop(){
  
  byte c;
  delay(100);
  m.shiftLeft(false, true);
  printStringWithShift(string1, 50);  // BURADAKI 50 DEGERİ HIZI IFADE EDER
// ARTARSA YAVASLAR AZALIRSA HIZLANIR
 
}
 
// Put extracted character on Display
void printCharWithShift(char c, int shift_speed){
  if (c < 32) return;
  c -= 32;
  memcpy_P(buffer, CH + 7*c, 7);
  m.writeSprite(maxInUse*8, 0, buffer);
  m.setColumn(maxInUse*8 + buffer[0], 0);
  
  for (int i=0; i<buffer[0]+1; i++) 
  {
    delay(shift_speed);
    m.shiftLeft(false, false);
  }
}
 
// Extract characters from Scrolling text
void printStringWithShift(char* s, int shift_speed){
  while (*s != 0){
    printCharWithShift(*s, shift_speed);
    s++;
  }
}

 Video ingilizcedir. Benim gibi anlamakta zorlanıyorsanız sesini kısıp izleyebilirsiniz :))

ALINTIDIR

Yorumlar   

0 #11 Ömer Yardaş 29-04-2017 12:57
@ işaretinin kodlarını değiştirip Büyük İ yaptım. büyük İ yazmanız gerektiğinde @ işaretini koyun. yürüyen yazıda büyük İ çıkacaktır.

@ işaretinin kodlarını aşağıdaki gibi değiştirin:
5, 8, B00000000, B01000010, B01111111, B01000010, B00000000, // @=İ
Alıntı
0 #10 OKTAY ŞİMŞEK 26-01-2017 14:08
Alıntılandı ÜMİT:
Bu işte biraz yeniyimde yazılar sağdan sola değilde yukarıdan aşagıya gidiyor. elimde 4′lü 8x8 Kırmızı Dot Matrix Board var ne yapmalıyım


Bende aldım ama kodu bulamıyorum sen buldun mu acana Ümit bey :-? 8)
Alıntı
0 #9 OKTAY ŞİMŞEK 26-01-2017 14:03
4lü 8x8 matrixte sola değil yukardan aşa gidiyor onun için ne yapcaz
Alıntı
0 #8 ömer 22-01-2017 00:14
Alıntılandı kemal:
8x8 dot matrix 10 tane baglıyacağız ama 7 tanesinden sonra yazı gelmiyor .ne yapmamız gerekiyor ? yardımcı olursanız sevinirim.


max7219 data load ve clock pinlerini bufferlemeniz gerekiyor . Arduino pin akımı yetmiyor anladığım kadarıyla
Alıntı
0 #7 oktay bosna 02-01-2017 16:32
Bu kodlarda alfabemi
yar dımcı olurmusunuz
Alıntı
+2 #6 Oktay ŞİMŞEK 08-12-2016 22:30
Kalp ve gülücüğü nasıl yapacaz acaba :cry:
Alıntı
+2 #5 Ömer KÖSE 08-07-2016 20:59
Merhaba Birkan Bey. Paylaşımınız çok işime yaradı teşekkür ederim emeğinize sağlık iyi çalışmalar.
Alıntı
0 #4 Baris 16-04-2016 19:06
Kemal 8x8 dot matrix le nasil yaptin max 7219 pinlerine 8x8 taksak olurmu
Alıntı
+3 #3 ÜMİT 15-04-2016 06:38
Bu işte biraz yeniyimde yazılar sağdan sola değilde yukarıdan aşagıya gidiyor. elimde 4′lü 8x8 Kırmızı Dot Matrix Board var ne yapmalıyım
Alıntı
0 #2 kemal 03-04-2016 00:44
8x8 dot matrix 10 tane baglıyacağız ama 7 tanesinden sonra yazı gelmiyor .ne yapmamız gerekiyor ? yardımcı olursanız sevinirim.
Alıntı

Yorum ekle


Güvenlik kodu
Yenile