Como usar um display de LED de sete segmentos com Arduino

Usando um display de LED de sete segmentos com Arduino

Um display de LEDs é um componente utilizado para exibir informação em um painel por meio do emprego de múltiplos segmentos de LEDs que emitem luz, acionados por tensões entre 2 e 5VCC geralmente.

Esse tipo de display pode exibir caracteres alfanuméricos, apenas números, ou ainda símbolos, além de formas geométricas e pontos em alguns modelos.

O tipo de display de LED mais simples é o Display de Sete Segmentos que, como o próprio nome diz, é composto por sete segmentos (LEDs) que podem ser acionados individualmente; geralmente, há também um oitavo segmento, que aciona um LED para representação de um ponto decimal.

A figura a seguir mostra um display de sete segmentos típico, que possui também um LED para representar o ponto decimal:

Display de LED de Sete Segmentos

Figura 01 – Display de LED de Sete Segmentos

Neste tutorial vou mostrar como acionar um display de 7 segmentos típico, criando um contador numérico de 0 a 9, usando o Arduino.

Diagrama esquemático

Na figura a seguir temos o diagrama esquemático do circuito que vamos utilizar:

Diagrama esquemático do display de 7 segmentos com Arduino

Lista de componentes

Precisaremos dos seguintes componentes para elaborar o circuito:

1 Arduino Uno (ou Mega)

8 Resistores de 220Ω

1 Display de LED de sete segmentos, catodo comum (pode ser utilizado anodo comum, porém deverão ser feitas alterações simples no circuito e no código)

Matriz de contatos

Fios (jumpers) diversos.

Pinagem do display de 7 segmentos de LED

 

Código do sketch

Abaixo temos o código do programa que será executado neste circuito:

// Matriz de bits para representar os números de 0 a 9:
int numero[11][8] = { // 11 linhas, 8 colunas
 { 1,1,1,1,1,1,0,0 }, //0
 { 0,1,1,0,0,0,0,0 }, //1
 { 1,1,0,1,1,0,1,0 }, //2
 { 1,1,1,1,0,0,1,0 }, //3
 { 0,1,1,0,0,1,1,0 }, //4
 { 1,0,1,1,0,1,1,0 }, //5
 { 0,0,1,1,1,1,1,0 }, //6
 { 1,1,1,0,0,0,0,0 }, //7
 { 1,1,1,1,1,1,1,0 }, //8
 { 1,1,1,0,0,1,1,0 }, //9
 { 0,0,0,0,0,0,0,1 } //ponto decimal
};

// Configurar os pinos digitais associados a cada segmento:
const int segmentos[8] = { 2,3,4,5,6,7,8,9 };
// 2 = segmento a
// 3 = segmento b
// 4 = segmento c
// 5 = segmento d
// 6 = segmento e
// 7 = segmento f
// 8 = segmento g
// 9 = ponto decimal

void setup() {
 // Configurando os pinos de cada segmento para saída:
 for (int i = 0; i <= 7; i++) {
   pinMode(segmentos[i], OUTPUT);
 }
}

void loop() {
 // Displays de catodo comum: acendem com valor 1 nos pinos digitais
 // chamar função mostraNumero, que exibe os numeros em sequência a cada 1 segundo:
 for (int i = 0; i <=10; i++) {
   mostraNumero(i);
   delay(500);
 }
}

// Implementando a função mostraNumero, que exibe os numeros em sequência a cada 1 segundo:
void mostraNumero(int valor) { // valor é a linha (número a mostrar)
 int pino = 2; // começar contagem no pino 2
 for (int i = 0; i < 8; i++) {
 digitalWrite(pino, numero[valor][i]); // fixa na linha e aciona os bits de cada coluna (0 ou 1)
 pino++;
 }
}

 

Visualização

Veja o circuito montado em ação, realizando a contagem de números de 0 a 9 (e o ponto decimal também):

Arduino

Se preferir, assista a um vídeo que mostra os procedimentos descritos em ação:

É isso aí! Nos próximos tutoriais vamos explorar mais a fundo o uso de displays de sete segmentos, incluindo displays de dois ou mais dígitos, e também o uso de bibliotecas do Arduino para esse componente.

Até!

 

 

Sobre Fábio dos Reis (1090 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Astronomia, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

2 Comentários em Como usar um display de LED de sete segmentos com Arduino

  1. Olá, preciso de uma dica para a programação do Java em comando ao arduino para acender led

Escreva um comentário

Seu e-mail não será divulgado


*