Este tutorial faz parte de: Matriz de LEDs RGB ESP32-S3
Projeto bacana para criar com aplicações práticas e divertidas usando o módulo ESP32-S3 RGB Matrix. Links para outros vídeos estão abaixo deste artigo.
Projeto de Matriz de LED RGB ESP32-S3 2 - Texto Rolante
Projeto 2 - Rolagem de Texto na Matriz de LED RGB ESP32-S3
Neste projeto, transformamos a matriz de LEDs RGB ESP32-S3 em um pequeno banner de texto. Uma mensagem curta (por exemploRobojax) rola pelo display RGB 8×8, e você pode facilmente mudar o texto, a cor, o brilho e a velocidade de rolagem diretamente no código. Isso é muito útil para notificações simples, etiquetas de nome ou pequenas mensagens de status.
Todos os seis projetos desta série são demonstrados e explicados em um único vídeo no YouTube. O mesmo vídeo está incorporado nesta página, para que você possa ver exatamente como o efeito de rolagem de texto fica em tempo real e como cada configuração afeta a animação. O código completo para este projeto é carregado automaticamente abaixo do artigo, e você pode adquirir o módulo de matriz LED RGB ESP32-S3 em lojas afiliadas listadas na seção de código.
Este projeto baseia-se nos fundamentos do Projeto 1 (movimento de ponto e controle de cor) e adiciona renderização de texto e rolagem usando a biblioteca NeoMatrix.


Visão geral do Módulo de Matriz LED RGB ESP32-S3
O hardware é o mesmo em todos os seis projetos: um microcontrolador ESP32-S3 com Wi-Fi e Bluetooth, uma matriz de LED RGB 8×8 (64 LEDs RGB endereçáveis), um acelerômetro QMI8658C, porta USB e pinos de E/S acessíveis.:contentReference[oaicite:0]{index=0}

- ESP32-S3- CPU principal com Wi-Fi/BLE para projetos avançados.
- Matriz RGB 8×8- 64 LEDs RGB para ícones, texto e animações.
- acelerômetro QMI8658C- usado em projetos posteriores para inclinação e orientação.
- Porta USB- utilizado para alimentação e programação via Arduino IDE.
- Pinos expostos- deixe você usar a placa como um ESP32 normal para outras entradas e saídas.
- Botão de inicialização / Botão de redefinição- para upload de firmware e reinicialização de sketches.
No Projeto 2, focamos principalmente nas funções de matriz e de texto do NeoMatrix. O acelerômetro ainda não está em uso, mas a mesma placa irá gerenciar toda a interação e os projetos de jogos posteriores.

Projetos Cobertos no Vídeo (Marcos de Tempo)
O vídeo que acompanha este artigo cobre todos os seis projetos. Os horários aproximados são:
- 00:00- Introdução
- 02:01- Instalando placas ESP32
- 03:32- Instalando bibliotecas
- 05:32- Projeto 1: Ponto em Movimento
- 11:11- Projeto 2: Rolagem de Texto
- 12:59- Projeto 3: Texto HTTP
- 16:41- Projeto 4: Tilt Dot
- 18:55- Projeto 5: Seta Para Cima
- 20:02- Projeto 6: Jogo de Alvo
Você é encorajado a assistir ao vídeo enquanto lê este artigo. Ele mostra o texto rolando ao vivo na matriz de LED e passa por todos os passos no Arduino IDE.
Instalando Placas ESP32 no Arduino IDE
Antes de executar o código de rolagem de texto, certifique-se de que o suporte a ESP32 está instalado em sua IDE Arduino:
- Abrir
File > Preferencese adicione a URL das placas ESP32 em "URLs Adicionais do Gerenciador de Placas". - Vá para
Tools > Board > Boards Manager…, procure porESP32, e instale o pacote oficial do ESP32. - Selecione sua placa de matriz RGB ESP32-S3 de
Tools > Board. - Conecte o módulo via USB e escolha a porta COM/serial correta em
Tools > Port.
Se o tipo de placa ou a porta não estiverem corretos, o sketch não será carregado.
Instalação do NeoMatrix e Bibliotecas Necessárias
O rolo de texto é implementado usando Adafruit NeoMatrix e suas dependências. No vídeo, eles são instalados através do Gerenciador de Bibliotecas.
Você precisará de:
Adafruit NeoMatrixAdafruit NeoPixelAdafruit GFX Library
- Abrir
Sketch > Include Library > Manage Libraries…. - Pesquisar por
Adafruit NeoMatrixe cliqueInstalar. - Quando solicitado, permita que ele instale.
Adafruit GFXeAdafruit NeoPixelcomo dependências.
Se a instalação for bem-sucedida, você deverá ver exemplos de esboços emFile > Examples > Adafruit NeoMatrixeFile > Examples > Adafruit NeoPixel.
Projeto 2 - Configurações de Código (Deslocamento de Texto)
O esboço do texto completo do rolo é carregado automaticamente abaixo deste artigo no site. Aqui focamos apenas nos valores de configuração que você provavelmente desejará editar: pino, tamanho da matriz, brilho, string de texto, cor, velocidade de rolagem e direção opcional.
Todas as amostras abaixo são retiradas da seção de configuração no topo do esboço, para que você possa ajustar rapidamente o comportamento sem mexer na lógica principal.
Pino e Tamanho da Matriz
Assim como o Projeto 1, a matriz RGB está conectada ao GPIO 14 e contém 64 LEDs (8×8). Certifique-se de que estas duas linhas correspondem ao seu módulo:
// Pin connected to 8×8 RGB matrix
const int MATRIX_PIN = 14; // must be 14 on this module // Matrix size (width and height)
const int MATRIX_WIDTH = 8;
const int MATRIX_HEIGHT = 8;
Se você copiar um exemplo da biblioteca NeoMatrix, pode usar um pino ou tamanho diferente; sempre altere-os para corresponder a esta placa.
Brilho do Texto
O brilho é geralmente controlado com um valor entre 0 e 255, onde 0 é desligado e 255 é o brilho máximo. Um valor moderado geralmente é suficiente:
// Overall matrix brightness (0–255)
uint8_t matrixBrightness = 40; // comfortable indoor brightness // In
setup():
matrix.setBrightness(matrixBrightness);
Se você usar o painel em um ambiente iluminado ou por um curto período, pode aumentar esse valor, mas evite subir muito se estiver perto do display.
Texto para Rolagem
A mensagem real é armazenada como uma string. No vídeo, o texto de exemplo éRobojax. Você pode alterar para qualquer rótulo ou mensagem curta que desejar:
// Text to scroll on the 8×8 matrix const char scrollText[] = "Robojax";
// change this to your message
Tenha em mente que esta é apenas uma matriz 8×8, portanto mensagens muito longas levarão mais tempo para rolar e podem se tornar difíceis de ler.
Cor do Texto (Valores RGB)
A cor do texto em rolagem é definida pelos componentes vermelho, verde e azul (0-255). Por exemplo, o vermelho puro é(255, 0, 0), verde puro é(0, 255, 0), e azul puro é(0, 0, 255). No esboço você verá algo como:
// Text color (R, G, B) uint8_t textRed = 255; // red component uint8_t textGreen = 0; // green component uint8_t textBlue = 0; // blue component Para mudar a cor:
- Amarelo:
textRed = 255; textGreen = 255; textBlue = 0; - Ciano:
textRed = 0; textGreen = 255; textBlue = 255; - Branco:
textRed = 255; textGreen = 255; textBlue = 255;
O vídeo também demonstra o uso de um seletor de cores online para encontrar os valores RGB e, em seguida, inseri-los no código.:contentReference[oaicite:1]{index=1}
Velocidade de Rolagem (Atraso Entre Quadros)
A velocidade de rolagem é controlada por um valor de atraso em milissegundos entre cada etapa de atualização. Um valor menor faz o texto se mover mais rápido; um valor maior o desacelera. No esboço, você deve encontrar uma variável como:
// Delay between scroll steps (in milliseconds) int scrollDelayMs = 50;
// smaller = faster, larger = slower
Exemplos:
scrollDelayMs = 20;→ rolagem rápida.scrollDelayMs = 50;→ velocidade média (similar ao vídeo).scrollDelayMs = 100;ou mais → rolagem lenta e de fácil leitura.
Dentro doloop(), este valor é usado em umdelay(scrollDelayMs);chame após cada redesenho da posição do texto.
Direção de Rolagem (Opcional)
No projeto "scroll de texto básico", geralmente rolamos para a esquerda, mas é útil definir uma variável de direção simbólica para que você possa experimentar outras direções depois (esquerda, direita, para cima, para baixo).
Um padrão comum é:
// Scroll direction selector // 0 = left, 1 = right, 2 = up, 3 = down
int scrollDirection = 0; // default: scroll to the left
O loop principal então verificascrollDirectione move o texto na direção escolhida. Para o Projeto 2, você pode deixá-lo em0(a esquerda), mas se você estender o esboço mais tarde, pode adicionar condições como:
if (scrollDirection == 0) {
// move text left
} else if (scrollDirection == 1) {
// move text right
} else if (scrollDirection == 2) {
// move text up
} else if (scrollDirection == 3) {
// move text down
}
Para este artigo, documentamos apenas a configuração. A implementação completa faz parte do código carregado abaixo do artigo.
Resumo
O Projeto 2 transforma o seu Matriz de LED RGB ESP32-S3 em um display de texto simples, mas chamativo. Editando apenas algumas variáveis no topo do código, você pode mudar rapidamente:
- Qual mensagem é exibida (
scrollText). - A cor do texto
textRed,textGreen,textBlue). - A luminosidade da matriz (
matrixBrightness). - A velocidade de rolagem
scrollDelayMs). - A direção da rolagem
scrollDirection, se você optar por usá-lo).
O esboço completo deste projeto está disponível abaixo deste artigo (carregado automaticamente pelo site). Para uma configuração detalhada passo a passo e uma demonstração ao vivo do texto rolante em ação, certifique-se de assistir à seção correspondente do vídeo. Se você gostou do projeto e deseja construí-lo você mesmo, também pode comprar o módulo de matriz de LED RGB ESP32-S3 através dos links afiliados listados abaixo do código.
Este tutorial é parte de: Matriz de LEDs RGB ESP32-S3
- Projetos de Matriz de LED RGB ESP32-S3 (Jogo de Inclinação, Texto, Seta, Demonstração WiFi)
- Projeto de Matriz LED RGB ESP32-S3 3 - Texto do telefone móvel
- Projeto de Matriz LED RGB ESP32-S3 4 - Ponto Inclinado
- Projeto de Matriz de LED RGB ESP32-S3 5 - Setas sempre para cima
- Projeto de Matriz de LED RGB ESP32-S3 6 - Jogo de Cible
- Projeto de Relógio Básico ESP32-S3 Matriz de LED RGB Wi-Fi + Relógio NTP -1
- Projeto de Relógio da Internet com Matriz de LED RGB ESP32-S3 - Exibição de Hora e Data em Multi Cor para 2 Relógios
- Projeto de Relógio da Internet com Matriz de LED RGB ESP32-S3 - 3 Cores Noturnas com Data
- Projeto de Relógio Internet com Matriz LED RGB ESP32-S3 - 5 Cores do Arco-íris
- Projeto de Relógio de Internet com Matriz de LED RGB ESP32-S3 - 4 Cores Aleatórias
- Teste de Matriz de LED RGB ESP32-S3 para configuração RGB, GRB
Coisas que você pode precisar
-
Amazonas
-
eBay
-
AliExpressCompre a matriz RGB ESP32-S3 na AliExpress (2)s.click.aliexpress.com
-
AliExpressCompre a matriz RGB ESP32-S3 na AliExpress.s.click.aliexpress.com
Recursos e referências
-
InternoFerramenta de seleção de coresrobojax.com
Arquivos📁
Arquivo Fritzing
-
esp32-S3-supermini-tht fritzing part
esp32-S3-supermini-tht.fzpz0.02 MB