Arduino Uno R4 - Display de 7 Segmentos e 4 Dígitos com 74HC595
O Arduino Uno R4 - disponível como Minima e WiFi - traz mais poder de processamento, mais memória e um ADC de 14 bits, mantendo o layout clássico de conectores do Uno. O módulo de display de 7 segmentos e 4 dígitos com 74HC595 se conecta ao Uno R4 usando os mesmos pinos do Uno clássico.
Neste guia você vai:
- Ligar o módulo de display 74HC595 a um Arduino Uno R4.
- Exibir números inteiros e de ponto flutuante.
- Mostrar texto, símbolos de grau e leituras de temperatura.
- Exibir a hora no formato HH.MM com um separador piscante.

Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables STEM V4 IoT Starter Kit (Arduino included) | |
| 1 | × | DIYables STEM V4B IoT Starter Kit (Arduino included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Visão Geral do Display de 7 Segmentos e 4 Dígitos com 74HC595
O módulo de display de 7 segmentos e 4 dígitos baseado no 74HC595 reúne quatro dígitos, cada um com 7 segmentos de LED e um ponto decimal, atrás de um único registrador de deslocamento. Isso significa que você precisa de apenas 3 pinos do seu microcontrolador para controlar o display inteiro.
O módulo cuida da multiplexação internamente por meio da biblioteca de software. Você só chama print() com um valor e continua chamando loop() para atualizar.
| Função | Pino | Descrição |
|---|---|---|
| SCLK (SH_CP) | Clock Serial | Sinal de clock para deslocar os dados para dentro do registrador |
| RCLK (ST_CP) | Clock do Registrador | Latch para enviar os dados deslocados aos pinos de saída |
| DIO (DS) | Entrada de Dados | Dados seriais enviados ao registrador de deslocamento |
| VCC | Alimentação | Alimentação de 3.3V ou 5V |
| GND | Terra | Terra comum |
Diagrama de Ligação
Ligue o módulo de display ao Arduino Uno R4 assim:
- SCLK ao pino 7
- RCLK ao pino 6
- DIO ao pino 5
- VCC ao 5V
- GND ao GND

This image is created using Fritzing. Click to enlarge image
Veja A melhor forma de alimentar o Arduino Uno R4 e outros componentes.
Como Instalar a Biblioteca
- Conecte o Arduino Uno R4 ao seu computador usando um cabo USB Type-C.
- Na Arduino IDE, verifique se a placa correta (Arduino Uno R4 Minima ou WiFi) e a porta serial estão selecionadas.
- Clique no ícone Libraries na barra lateral esquerda.
- Digite "DIYables_4Digit7Segment_74HC595" na caixa de busca e localize a biblioteca publicada pela DIYables.
- Clique em Install para adicionar a biblioteca à sua IDE. Selecione a versão 2.0.0 ou mais recente.

Nenhuma dependência adicional é necessária - a biblioteca é totalmente independente.
Estrutura Mínima do Sketch
Todos os sketches que usam a biblioteca DIYables_4Digit7Segment_74HC595 compartilham este esqueleto:
Chame display.begin() uma vez no setup() para configurar os pinos. Depois chame display.loop() repetidamente para que a biblioteca faça a multiplexação dos 4 dígitos. Defina o conteúdo do display com print() - o valor permanece até você mudá-lo.
Se você precisar de um atraso no seu código, use display.delay(ms) para que o display continue sendo atualizado.
Exibir Inteiros
Este exemplo mostra números inteiros no display, passando por vários valores, incluindo números negativos e saída preenchida com zeros.
Como Executar
- Ligue o display ao Uno R4 como descrito acima.
- Conecte o cabo USB Type-C.
- Cole o código na Arduino IDE, escolha a placa e a porta corretas e pressione Upload.
- Abra o Serial Monitor para ver a saída.
O display passa por 0, 42, 1234, -5, -123 e 9999 e depois mostra 0042 (preenchido com zeros). Cada valor fica por 2 segundos.
Referência Rápida de Métodos
| Método | O Que Faz | Uso |
|---|---|---|
| print(int) | Mostra um inteiro (-999 a 9999) | display.print(1234) |
| print(int, true) | Mostra o inteiro com zeros à esquerda | display.print(42, true) |
| loop() | Atualiza a multiplexação do display | display.loop() |
| begin() | Inicializa os pinos do display | display.begin() |
Exibir Floats
Este exemplo demonstra a exibição de floats com casas decimais automáticas e especificadas manualmente.
Como Executar
- Cole o código na Arduino IDE, escolha a placa e a porta corretas e pressione Upload.
- Abra o Serial Monitor para ver a saída.
Os floats são exibidos primeiro com casas decimais automáticas, depois com 1 e 2 casas decimais fixas e, por fim, com preenchimento de zeros.
Exibir Texto e Temperatura
Este exemplo cobre textos, o símbolo de grau e o método de exibição de temperatura.
Como Executar
- Faça o upload do sketch e abra o Serial Monitor.
O display mostra textos como "HELP" e "COOL" e depois valores de temperatura com o símbolo de grau e a letra da unidade.
Exibir a Hora
Mostra um display no estilo de relógio HH.MM com um ponto piscante entre as horas e os minutos.
Como Executar
- Faça o upload do sketch e abra o Serial Monitor.
O display mostra 12.30 com o ponto alternando a cada 500ms para criar um separador piscante.
Piscar o Display
Usa off() e on() para fazer valores diferentes piscarem no display.
Como Executar
- Faça o upload do sketch e abra o Serial Monitor.
O display pisca 1234 cinco vezes, depois 12.34 e depois "HELP", repetindo os três em ciclo.
Referência Rápida de Métodos
| Método | O Que Faz | Uso |
|---|---|---|
| off() | Apaga o display | display.off() |
| on() | Retoma a saída do display | display.on() |
| delay(ms) | Espera mantendo o display ativo | display.delay(2000) |
| yield() | Um ciclo de atualização para loops longos | display.yield() |
Solução de Problemas
- Nada no display - Confira novamente as conexões de VCC e GND. Confirme que os pinos SCLK, RCLK e DIO correspondem ao código. Verifique se begin() está no setup() e se loop() chama display.loop().
- Caracteres errados ou embaralhados - Verifique se o display é de anodo comum ou catodo comum. O padrão é anodo comum. Para catodo comum, passe false: DIYables_4Digit7Segment_74HC595 display(7, 6, 5, false).
- O display apaga ou fica tremulando - Evite delay() no seu código. Use display.delay() no lugar para manter a multiplexação ativa.
Suporte de Plataformas
A biblioteca depende exclusivamente das APIs padrão do Arduino (pinMode, digitalWrite, millis) e funciona em todas as plataformas compatíveis com Arduino.