Arduino - Matriz de LED
Displays de matriz de LED, também conhecidos como displays de LED ou displays de matriz de pontos, são muito usados. Neste tutorial, vamos aprender:
- Matriz de LED
- Como conectar o Arduino a uma matriz de LED 8x8
- Como conectar o Arduino a uma matriz de LED 32x8
- Como usar o Arduino para mostrar texto, números e efeitos animados na matriz de LED.
Depois disso, você pode adaptar facilmente o código para outras matrizes de LED, como matriz de LED 16x8, matriz de LED 64x8 ...
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables STEM V3 Starter Kit (Arduino included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre a Matriz de LED

Existem muitos tipos de matriz de LED. Com o Arduino, a matriz de LED baseada no MAX7219 é muito usada. A matriz de LED baseada no MAX7219 tem as seguintes características:
- A unidade básica de uma matriz de LED é um bloco
- Cada bloco tem uma matriz de LED 8x8 (64 LEDs) e um driver MAX7219.
- Existem dois formatos de bloco populares: o módulo genérico e o módulo FC-16.
- Uma matriz de LED pode ser formada por um único bloco ou por vários blocos ligados em cascata (daisy-chain)
- Você pode comprar uma matriz de LED pronta com vários blocos (por exemplo, 4 em 1, 8 em 1)
- Você também pode comprar vários blocos e ligá-los para formar uma matriz de LED do tamanho desejado.
- Você vai declarar o tamanho da matriz de LED que está usando no código do Arduino.
Pinagem

Uma matriz de LED é formada por um ou vários blocos. Cada bloco inclui dois grupos de pinos:
- Grupo de pinos de entrada:
- VCC: conectado ao 5V.
- GND: conectado ao GND.
- DIN é o pino de dados. Conecte-o ao pino SPI MOSI do Arduino.
- CS: Chip Select. Conecte-o a qualquer pino digital do Arduino.
- CLK: pino de clock. Conecte-o ao pino SPI CLK do Arduino.
- Grupo de pinos de saída:
- VCC: conecta ao VCC do próximo módulo.
- GND: conecta ao GND do próximo módulo.
- DOUT: Data Out (saída de dados), conecta ao pino DIN do próximo módulo.
- CS: conecta ao CS do próximo módulo.
- CLK conecta ao CLK do próximo módulo.
Diagrama de Ligação
Se a matriz de LED for formada por um único bloco:
- Conecte o grupo de pinos de entrada ao Arduino
- Deixe o grupo de pinos de saída desconectado

This image is created using Fritzing. Click to enlarge image

This image is created using Fritzing. Click to enlarge image
Se a matriz de LED for pronta, com vários blocos:
- Conecte o grupo de pinos de entrada ao Arduino
- Deixe o grupo de pinos de saída desconectado

This image is created using Fritzing. Click to enlarge image
Se a matriz de LED for montada por você com vários blocos:
- Conecte o grupo de pinos de entrada do primeiro bloco ao Arduino
- Conecte o grupo de pinos de saída de cada bloco ao grupo de pinos de entrada do próximo bloco
- Deixe o grupo de pinos de saída do último bloco desconectado

This image is created using Fritzing. Click to enlarge image

This image is created using Fritzing. Click to enlarge image
Como o display consome muita corrente (até 1A no brilho máximo):
- Não use a alimentação do pino 5V do Arduino.
- Use uma fonte de alimentação externa de 5V. O Arduino e a matriz de LED podem compartilhar a alimentação de uma fonte de alimentação de 5V
Como o Arduino se conecta à matriz de LED pelos pinos SPI:
- Os pinos 13 (SCK) e 11 (MOSI) do Arduino Uno devem ser usados. Se você estiver usando outra placa Arduino, consulte a documentação oficial para encontrar os pinos SPI equivalentes.
- O pino 3 (CS) pode ser trocado por qualquer pino
Como Programar a Matriz de LED
Não é fácil controlar a matriz de LED. Felizmente, existem bibliotecas que facilitam isso. Abaixo está um passo a passo de como escrever o código Arduino para controlar a matriz de LED
- Inclua as bibliotecas:
- Especifique qual hardware está sendo usado: GENERIC_HW ou FC16_HW.
- Defina quantos blocos de LED são usados. Por exemplo, uma matriz de LED 4 em 1 tem 4 blocos.
- Defina o pino que se conecta ao pino CS da matriz de LED. Por exemplo, o pino D3
- Crie uma nova instância da classe MD_Parola para o display de matriz de LED.
- Código na função setup():
- Mostrar texto, números e efeitos animados: veja a próxima parte
Arduino - Código da Matriz de LED
O código abaixo é para o display de matriz de LED 32x8 FC-16 (4 blocos). Mas você pode adaptá-lo facilmente para 8x8, 16x8, 64x8...
Passos Rápidos
- Conecte o Arduino à matriz de LED conforme o diagrama de ligação acima
- Conecte o Arduino ao PC por meio do cabo USB
- Vá até o ícone Libraries na barra esquerda do Arduino IDE.
- Pesquise “MD_Parola” e encontre a biblioteca MD_Parola
- Clique no botão Install.

- Será pedido que você instale a biblioteca MD_MAX72XX como dependência. Clique no botão Install All.

- Copie o código acima e abra-o com o Arduino IDE
- Clique no botão Upload no Arduino IDE para carregar o código no Arduino
- Veja o display de matriz de LED
Código Arduino para Matriz de LED – Texto Rolando
Quando você quer mostrar uma mensagem longa demais para caber no display de matriz de LED, você pode usar a técnica do efeito de texto rolando.
O código Arduino abaixo mostra como fazer uma mensagem rolar no display de matriz de LED.
Para mais efeitos de texto, visite a Referência da Biblioteca MD_Parola.
Vídeo
O vídeo de demonstração abaixo usa o seguinte código: