Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade
O projeto de Texto Rolante com Arduino é uma aplicação interessante e educativa para quem deseja aprender mais sobre displays de LED e a programação de microcontroladores. Este projeto permite que você exiba mensagens de texto que se movem horizontalmente em um display de LED, criando um efeito visual atraente. É uma ótima maneira de se familiarizar com a interface de hardware e software do Arduino, além de ser um projeto divertido e útil para diversas aplicações, como painéis de informação, decoração, entre outros.
Project: Neste projeto, iremos criar um display de texto rolante utilizando um módulo de display de LED 8x8 e um Arduino. O objetivo é exibir uma mensagem de texto que se move da direita para a esquerda continuamente. A funcionalidade principal é a rolagem do texto, mas o projeto pode ser expandido para incluir diferentes efeitos de rolagem, controle de velocidade, e até mesmo a exibição de diferentes mensagens baseadas em entradas externas.
Components List:
Examples:
// Incluindo a biblioteca necessária para controlar o display de LED
#include <LedControl.h>
// Definindo os pinos de conexão do MAX7219 ao Arduino
#define DIN_PIN 12
#define CLK_PIN 11
#define CS_PIN 10
// Inicializando o objeto LedControl
LedControl lc = LedControl(DIN_PIN, CLK_PIN, CS_PIN, 1);
// Definindo a mensagem a ser exibida
const char* message = "Hello, world!";
// Função de configuração
void setup() {
// Inicializando o display
lc.shutdown(0, false); // Acorda o display
lc.setIntensity(0, 8); // Define a intensidade (0-15)
lc.clearDisplay(0); // Limpa o display
}
// Função principal de loop
void loop() {
scrollMessage(message);
}
// Função para rolar a mensagem no display
void scrollMessage(const char* msg) {
int len = strlen(msg);
for (int i = 0; i < len * 8 + 8; i++) {
lc.clearDisplay(0);
for (int j = 0; j < 8; j++) {
if (i - j * 8 >= 0 && i - j * 8 < len * 8) {
lc.setRow(0, j, pgm_read_byte_near(font8x8_basic + msg[(i - j * 8) / 8] * 8 + j));
}
}
delay(100);
}
}
// Fonte de caracteres 8x8
const uint8_t font8x8_basic[128][8] PROGMEM = {
// Definição dos caracteres ASCII de 0x20 a 0x7F
// Cada caractere é representado por uma matriz 8x8 de bits
// Exemplo para o caractere 'H' (0x48):
// {0x18, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, 0x18},
// ...
};
Comentários sobre o código:
LedControl.h
é usada para controlar o display de LED com o controlador MAX7219.DIN_PIN
, CLK_PIN
e CS_PIN
são definidos para a comunicação SPI com o display.setup()
inicializa o display, definindo a intensidade e limpando qualquer dado anterior.loop()
chama a função scrollMessage()
continuamente para rolar a mensagem.scrollMessage()
rola a mensagem de texto no display, deslocando-a pixel por pixel.font8x8_basic
contém a definição dos caracteres ASCII em formato 8x8.