ESP8266 - Matriz de LED
Este tutorial ensina você a usar o ESP8266 com um display de matriz de LED. Em detalhes, vamos aprender:
- Sobre o display de matriz de LED
- Como conectar o ESP8266 a uma matriz de LED 8x8
- Como conectar o ESP8266 a uma matriz de LED 32x8
- Como programar o ESP8266 para exibir texto, números e efeitos animados na matriz de LED.
Depois disso, será simples modificar o código para outras matrizes de LED, como uma matriz de LED 16x8 ou uma matriz de LED 64x8 ...
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre a Matriz de LED
Os displays de matriz de LED são comumente chamados de displays LED ou displays de matriz de pontos.

A matriz de LED existe em muitas variedades. A matriz de LED baseada no MAX7219 é muito usada com o ESP8266. Ela tem as seguintes características:
- Um único bloco consiste em uma matriz de LED 8x8 (64 LED) e um driver MAX7219.
- Existem dois tipos comuns de blocos: módulo genérico e módulo FC-16.
- Você pode comprar uma matriz de LED de vários blocos já pronta (por exemplo, 4 em 1, 8 em 1) ou ligar vários blocos entre si para criar uma matriz de LED do tamanho que desejar.
- O tamanho da matriz de LED que você usa deve ser declarado no código do ESP8266.
A Pinagem da Matriz de LED

Uma matriz de LED é composta por um ou mais blocos. Cada bloco tem dois conjuntos de pinos:
- Grupo de pinos de entrada:
- VCC: conectado à fonte de alimentação de 5V.
- GND: conectado ao terra.
- DIN: pino de dados, conectado a qualquer pino digital do ESP8266.
- CS: Chip Select, conectado a qualquer pino digital do ESP8266.
- CLK: pino de clock, conectado a qualquer pino digital do ESP8266.
- Grupo de pinos de saída:
- VCC: conecta ao VCC do próximo bloco.
- GND: conecta ao GND do próximo bloco.
- DOUT: Data Out, conecta ao pino DIN do próximo bloco.
- CS: conecta ao CS do próximo bloco.
- CLK conecta ao CLK do próximo bloco.
Diagrama de Ligação
Se a matriz de LED for feita de um único bloco:
- Conecte os pinos de entrada ao ESP8266
- Deixe os pinos de saída desconectados

This image is created using Fritzing. Click to enlarge image
Para mais informações, veja Pinagem do ESP8266 e como alimentar o ESP8266 e outros componentes.

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

This image is created using Fritzing. Click to enlarge image
Se você estiver montando a matriz de LED a partir de vários blocos:
- Conecte os grupos de pinos de entrada do primeiro bloco ao ESP8266
- Conecte os grupos de pinos de saída de cada bloco aos grupos de pinos de entrada do bloco seguinte
- Deixe o grupo de pinos de saída do último bloco desconectado

This image is created using Fritzing. Click to enlarge image
Devido ao alto consumo de corrente do display (até 1A no brilho máximo):
- Evite alimentá-lo pelo pino 5V do ESP8266.
- Use uma fonte de alimentação externa de 5V. O ESP8266 e a matriz de LED podem ser alimentados por um único adaptador de 5V.
Como o ESP8266 é conectado à matriz de LED pelos pinos SPI:
- Os pinos D5 (SCK) e D7 (MOSI) do ESP8266 devem ser utilizados. Se outra placa ESP8266 estiver sendo usada, consulte a documentação oficial para encontrar os pinos SPI equivalentes.
- O pino D8 (CS) pode ser definido como qualquer pino da placa ESP8266.
Como Programar para a Matriz de LED
Controlar a matriz de LED não é uma tarefa simples. Felizmente, existem bibliotecas que tornam isso muito mais fácil. Aqui está um guia passo a passo de como escrever o código do ESP8266 para controlar a matriz de LED:
- Inclua as bibliotecas:
- Especifique o tipo de hardware a ser utilizado: GENERIC_HW ou FC16_HW.
- Especifique o número de blocos de LED usados. Por exemplo, uma matriz de LED 4 em 1 contém 4 blocos.
- Especifique o pino conectado ao pino CS da matriz de LED. Por exemplo, o pino D3.
- Crie um objeto MD_Parola para ser usado com o display de matriz de LED.
- Código localizado na função setup():
- Exiba texto, valores numéricos e efeitos animados: consulte a seção a seguir.
Código ESP8266 - Matriz de LED
Este código é adequado para um display de matriz de LED FC-16 32x8 composto por quatro blocos. Ele pode ser facilmente adaptado para outros tamanhos, como 8x8, 16x8 e 64x8.
Passos Rápidos
Para começar com o ESP8266 na Arduino IDE, siga estes passos:
- Veja o tutorial como configurar o ambiente para o ESP8266 na Arduino IDE se esta for a sua primeira vez usando o ESP8266.
- Ligue os componentes conforme mostrado no diagrama.
- Conecte a placa ESP8266 ao seu computador usando um cabo USB.
- Abra a Arduino IDE no seu computador.
- Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
- Conecte o ESP8266 à matriz de LED como mostrado no diagrama de ligação.
- Conecte o ESP8266 a um PC com um cabo USB.
- Clique no ícone Libraries na barra à esquerda da Arduino IDE.
- Pesquise por “MD_Parola” e localize a biblioteca MD_Parola.
- Pressione o botão Install.

- Você será solicitado a instalar a biblioteca “MD_MAX72XX”
- Clique no botão Install All para instalar a dependência.

- A mensagem
- Copie o código e abra-o na Arduino IDE.
- Clique no botão Upload na Arduino IDE para compilar e carregar o código no ESP8266.
- Confira a matriz de LED exibindo a mensagem.
Código ESP8266 para Matriz de LED – Texto em Rolagem
Se uma mensagem for longa demais para ser exibida em uma matriz de LED, é possível usar o efeito de texto em rolagem. Isso permite que a mensagem inteira seja vista.
Este código ESP8266 mostra como rolar uma mensagem em um display de matriz de LED.
Se você procura mais efeitos de texto, confira a Referência da Biblioteca MD_Parola.