Progetto Arduino

Disegno a matrice di LED 8 × 8

8 × 8 Led Matrice Figura Disegno

Cabine a led matrice Lo schermo LED si crea disponendoli nella struttura (uno sopra l’altro e uno accanto all’altro). In questa fase vengono determinati l’area totale, le dimensioni e le proporzioni di uno schermo LED. Le unità di base che compongono l’armadio dello schermo LED sono una struttura portante in metallo (tiene insieme gli armadietti), cavi di alimentazione / segnale, computer di controllo (o trasmettitori di immagini speciali) e pannello di distribuzione dell’alimentazione. Display a matrice 8 * 8 LED i moduli sono ampiamente utilizzati nel mercato e Arduino È molto facile connettersi con.

Materiali usati

  • Una scheda Arduino Uno,
  • Un modulo display LED 8 * 8 integrato MAX7219,
  • Un alimentatore da 5 volt.

Design

Le matrici LED possono essere pilotate dal microcontrollore in due modi, in serie e in parallelo. In questa applicazione, guideremo la matrice led in modo seriale. Per questo abbiamo bisogno di 3 cavi dati. I LED pilotati in serie leggono riga-riga o colonna-colonna.

Nel nostro progetto MAX7219 con interfaccia seriale Display a led a 8 cifre integrazione del driver Arduino e proveremo a stampare il motivo del cuore come immagine. MAX7219 con driver di connessione a catodo comune di ingresso / uscita seriale 64 LED possono essere controllati.

8x8 Led Matrix Figura Disegno
8 × 8 Led Matrix Figura Disegno

Tensione di esercizio del modulo DC 4,7 V – 5,3 V. e corrente di lavoro 320mALa massima corrente di esercizio è 2A. Il modulo ha 5 estremità. Questi; VCC, GND, DIN, CS, CLKè. Nell’ordine seguente Arduino Puoi vedere le connessioni tra il modulo e.

  • Matrice LED 8 × 8 DIN, pin 8 di Arduino,
  • Matrice LED 8 × 8 X, pin 9 di Arduino,
  • Matrice LED 8 × 8 CLK, pin 10 di Arduino,
  • 8 × 8 LED Matrix VCC, Alimentazione esterna 5 volt positivo (VCC),
  • 8 × 8 LED Matrix GND, Negativo alimentazione esterna (GND).

Codifica

Definiamo due variabili da utilizzare per il contatore nel programma; io, j. Richiesto per il modulo e le connessioni Arduino CLK, CS e A PARTIRE DAL Dopo aver definito i collegamenti, specifichiamo l’indice del disco a 8 colonne e 19 righe per disegnare il motivo del cuore. Per uno schema in movimento Write_Max7219_byte Utilizzando la funzione, accendiamo i LED facendoli scorrere uno per uno. L’orologio del collegamento seriale del sistema CLCK è il pin di selezione del chip CS, l’estremità di input dei dati DIN. Se il CS finisce logica-0 ovvero, se vengono scritti dati LOW, viene eseguito lo spostamento dei dati. Se CS è basso, l’orologio viene attivato e il pin CLK viene attivato. CLK Attivando la punta, l’immissione dei dati avviene dal pin DIN. Con i cicli eseguiti, i LED del display si spostano per formare lo schema e lampeggiano.

unsigned char i; // variabile 1
unsigned char j;  // variabile 2
 
int Max7219_pinCLK = 10; // CLK PİNİ
int Max7219_pinCS = 9; // CS PİNİ
int Max7219_pinDIN = 8; // DIN PİNİ
 
unsigned char disp1[19][8]={
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // MOTIVO A CUORE
  0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x00, 
  0x00, 0x00, 0x80, 0x40, 0x40, 0x00, 0x00, 0x00, 
  0x00, 0x80, 0x80, 0x40, 0x40, 0x00, 0x00, 0x00, 
  0x40, 0x80, 0x80, 0x40, 0x40, 0x00, 0x00, 0x00, 
  0x60, 0x80, 0x80, 0x40, 0x40, 0x00, 0x00, 0x00, 
  0x60, 0x90, 0x80, 0x40, 0x40, 0x00, 0x00, 0x00, 
  0x60, 0x90, 0x88, 0x40, 0x40, 0x00, 0x00, 0x00, 
  0x60, 0x90, 0x88, 0x44, 0x40, 0x00, 0x00, 0x00, 
  0x60, 0x90, 0x88, 0x44, 0x44, 0x00, 0x00, 0x00, 
  0x60, 0x90, 0x88, 0x44, 0x44, 0x08, 0x00, 0x00, 
  0x60, 0x90, 0x88, 0x44, 0x44, 0x08, 0x10, 0x00, 
  0x60, 0x90, 0x88, 0x44, 0x44, 0x08, 0x10, 0x20, 
  0x60, 0x90, 0x88, 0x44, 0x44, 0x08, 0x10, 0x60, 
  0x60, 0x90, 0x88, 0x44, 0x44, 0x08, 0x90, 0x60, 
  0x60, 0x90, 0x88, 0x44, 0x44, 0x88, 0x90, 0x60, // MOTIVO A CUORE
 
};
 
void Write_Max7219_byte(unsigned char DATA) 
{   
  unsigned char i;
  digitalWrite(Max7219_pinCS,LOW);  
  for(i=8;i>=1;i--)
  {    
    digitalWrite(Max7219_pinCLK,LOW);
    digitalWrite(Max7219_pinDIN,DATA&0x80);
    DATA = DATA<<1;
    digitalWrite(Max7219_pinCLK,HIGH);
  }                                 
}
 
void Write_Max7219(unsigned char address,unsigned char dat)
{
  digitalWrite(Max7219_pinCS,LOW);
  Write_Max7219_byte(address);          
  Write_Max7219_byte(dat);               
  digitalWrite(Max7219_pinCS,HIGH);
}
 
void Init_MAX7219(void)
{
  Write_Max7219(0x09, 0x00);      
  Write_Max7219(0x0a, 0x03);      
  Write_Max7219(0x0b, 0x07);       
  Write_Max7219(0x0c, 0x01);      
  Write_Max7219(0x0f, 0x00);      
}
 
void setup()
{
 
  pinMode(Max7219_pinCLK,OUTPUT);
  pinMode(Max7219_pinCS,OUTPUT);
  pinMode(Max7219_pinDIN,OUTPUT);
  delay(50);
  Init_MAX7219();
}
 
void loop()
{ 
  for(j=0;j<19;j++)
  {
    for(i=1;i<9;i++)
      Write_Max7219(i,disp1[j][i-1]);
    delay(500);
  }   
}

Il post 8 × 8 Led Matrix Figure Drawing è apparso per primo su Arduino Projects.

Mostra di più

Articoli Correlati

Başa dön tuşu
Kapalı