Preço reduzido

Display 7 segmentos 4 Dígitos (Pequeno)

1,77 €
2,08 €

(SEM IVA 1.44€)

ef16p0042

O Display LED de 4 Dígitos é um display básico de 7 segmentos com 4 dígitos muito utilizado em projectos de electrónica. (Dimensões: 1,4cm x 3cm)

Desconto de quantidade

Quantidade Preço Poupa
3 1,75 € Até 0,05 €
5 1,71 € Até 0,27 €
10 1,68 € Até 0,88 €
Quantidade
Não há produtos suficientes em stock

O Display LED de 4 Dígitos é um display básico de 7 segmentos com 4 dígitos muito utilizado em projetos de eletrónica. 

Especificações:
• Modelo: 3461BS;
• Cor dos LEDs: vermelho;
• Cátodo comum;
• 12 pinos;
• 4 dígitos;
• Altura dígito: 9mm;
• Dimensões: 30 x 14mm. 

Acompanha:
• 1x Display LED 4 dígitos 7 Segmentos (Pequeno). 

Esquema de Ligação:

Código Exemplo: 

// Ponto

int dp = 5;

 

// Segmentos

int a = 2;

int b = 4;

int c = 10;

int d = 9;

int e = 8;

int f = 3;

int g = 6;

 

// Digitos

int ls1 = 11;

int ls2 = 7;

int ls3 = 12;

int ls4 = 1;

 

int um=0;

int t=0;

int dois=0;

int três=0;

int quatro =0;

int currentMillis = 0;

 

int buttonState = 0;

 

byte pin_order[7] = { a,b,c,d,e,f,g };

byte digit_order[4] = { ls1,ls2,ls3,ls4 };

byte digitos[4][4] = { { 0,0,0,1 },

                      { 0,0,1,0 },

                      { 0,1,0,0 },

                      { 1,0,0,0 }

                    };

 

//-----------------------------------------------------------------

// Formato do array é a ordem de segmentos:   a,b,c,d,e,f,g

//-----------------------------------------------------------------

byte seven_seg_digits[10][7] = { { 0,0,0,0,0,0,1 },  // = 0

                                 { 1,0,0,1,1,1,1 },  // = 1

                                 { 0,0,1,0,0,1,0 },  // = 2

                                 { 0,0,0,0,1,1,0 },  // = 3

                                 { 1,0,0,1,1,0,0 },  // = 4

                                 { 0,1,0,0,1,0,0 },  // = 5

                                 { 0,1,0,0,0,0,0 },  // = 6

                                 { 0,0,0,1,1,1,1 },  // = 7

                                 { 0,0,0,0,0,0,0 },  // = 8

                                 { 0,0,0,1,1,0,0 }   // = 9

                               };

 

//---------------------------------------------------------------------

// Escreve um determinado numero (number) no digito (digit) informado

// OBS: Se number = 200 então vai desligar completamente o digito

void digWrite(byte digit, byte number) {

  int pinseq = 0;

 

  pickDigit(digit);

 

  writeDot(1);

 

  if (number == 200)

  {

    for (byte segCount = 0; segCount < 7; ++segCount)

    {

      digitalWrite(pin_order[pinseq], 0);

      ++pinseq;

    }

    return;

  }

 

  for (byte segCount = 0; segCount < 7; ++segCount)

  {

    digitalWrite(pin_order[pinseq], seven_seg_digits[number][segCount]);

    ++pinseq;

  }

}

 

//---------------------------------------------------------------------

// Ativa um determinado digito do componente

void pickDigit(int x)

{

  digitalWrite(ls1, LOW);

  digitalWrite(ls2, LOW);

  digitalWrite(ls3, LOW);

  digitalWrite(ls4, LOW);

 

  switch(x)

  {

    case 1:

      digitalWrite(ls1, HIGH); // colocando HIGH no pino, estamos habilitando o acendimento dos segmento

      break;

    case 2:

      digitalWrite(ls2, HIGH);

      break;

    case 3:

      digitalWrite(ls3, HIGH);

      break;

    default:

      digitalWrite(ls4, HIGH);

      break;

  }

}

 

void writeDot(byte dot) {

  digitalWrite(dp, dot);

}

 

void setup()

{

  int i;

 

  for(i=1; i <= 12;i++)    

     pinMode(i,OUTPUT);

 

  pinMode(A5, INPUT);

}

 

   int d1 = 0;

   int d2 = 0;

   int d3 = 0;

   int d4 = 0;

 

 void loop()

{

    buttonState = digitalRead(A5);

    if (buttonState == HIGH)

    {

       um=0;

       dois=0;

       três=0;

       quatro=0;

   }

 

   if( currentMillis >= 10000)

   {

    currentMillis = 0;

    dois++;

        if(dois >= 6)

        {

            dois=0;

            três++;

                if(três >= 10)

                {

                    três=0;

                    quatro++;

                    if (quatro >= 6)

                    {

                        um=0;

                        dois=0;

                        três=0;

                        quatro=0;

                    }

                }

        }

 }

 

  um=(currentMillis)/1000;

 

  digWrite(4, um);

  delay(5);

 

  digWrite(3, dois);

  delay(5);

 

  digWrite(2, três);

  delay(5);

 

  digWrite(1, quatro);

  delay(5);

 

  currentMillis = currentMillis + 20; // 20 = sum of each delay above

}

NOVA ENCOMENDA