• COMPONENTE
    DISPLAY LED DE 7 SEG.

O que é?

O Display de Led de 7 segmentos é um componente eletrônico que possui um encapsulamento que contém de 7 a 8 leds. É utilizado em projetos que necessitam da exibição de números ou de uma quantidade limitada de caracteres, por exemplo: relógios, contadores e outros.

O display é comercializado em diversos tamanhos e cores, podendo conter mais de um dígito no mesmo acoplamento, simplificando ainda mais sua utilização.
É importante destacar que existem dois modelos de displays: o anodo comum, que compartilha polos positivos e o catodo comum, que compartilha polos negativos.

Display led 7 seguimentos
Display led 7 seguimentos

Polarização

Apesar de possuírem as mesmas funcionalidades, a diferença está na forma de ligação.
Além dos 7 segmentos, o display possui um ponto adicional (Dp), permitindo a indicação de um ponto decimal.

Montagem dos componentes

Abaixo temos um código exemplo para o display fazer uma contagem regressiva de 9 a 0.

LISTA DOS COMPONENTES

  • 1 x Arduino Uno SMD
  • 1 x Cabo USB para comunicação
  • 1 x Protoboard 400 pontos
  • 1 x Display catodo
  • 7 x Resistores 220Ω
  • 8 x Jumpers macho/macho
Esquema montagem display

Código exemplo

O código de exemplo abaixo é referente ao esquema ilustrado acima.

IDE Arduino
//criando uma matriz com a contagem
byte seven_seg_digits[10][7] = {
{ 1,1,1,1,1,1,0 },  // = 0
{ 0,1,1,0,0,0,0 },  // = 1
{ 1,1,0,1,1,0,1 },  // = 2
{ 1,1,1,1,0,0,1 },  // = 3
{ 0,1,1,0,0,1,1 },  // = 4
{ 1,0,1,1,0,1,1 },  // = 5
{ 1,0,1,1,1,1,1 },  // = 6
{ 1,1,1,0,0,0,0 },  // = 7
{ 1,1,1,1,1,1,1 },  // = 8
{ 1,1,1,1,0,1,1 }   // = 9
};

//indicando os pinos conectados
void setup() {
    pinMode(2, OUTPUT);
    pinMode(3, OUTPUT);
    pinMode(4, OUTPUT);
    pinMode(5, OUTPUT);
    pinMode(6, OUTPUT);
    pinMode(7, OUTPUT);
    pinMode(8, OUTPUT);
}
 
void sevenSegWrite(byte digit) {
    byte pin = 2;
    for (byte segCount = 0; segCount < 7; ++segCount) {
            digitalWrite(pin, seven_seg_digits[digit][segCount]);
            ++pin;
    }
}
 
void loop() {
    for (byte count = 10; count > 0; --count) {
        delay(1000);
        sevenSegWrite(count - 1);
    }
    delay(4000);   // Aguarda 4 segundos para recomeçar a contar
}
IDE Arduino