Proteus Software - Display de 7 Segmentos


Arquivo Proteus 8.3 SP2

Arquivo Proteus 8.3 SP2


 

Código Arduino:


// Primeiramente setamos os 7 pinos dos segmentos

const int A = 22;
const int B = 23;
const int C = 24;
const int D = 25;
const int E = 26;
const int F = 27;
const int G = 28;
const int PT = 29; // setamos o ponto do display

boolean ligaPonto = false;

// Variaveis liga e desliga p/ display 7 segmentos
//const int l = 1, d = 0; // Display 7 segmentos (catodo comum)
const int l = 0, d = 1; // Display 7 segmentos (anodo comum)


void setup(){

// seta todos as portas que estão os leds do display como saída

pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
pinMode(E, OUTPUT);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
pinMode(PT, OUTPUT);

}


void loop(){

//acende os leds que representam o número 0

digitalWrite(A, l);
digitalWrite(B, l);
digitalWrite(C, l);
digitalWrite(D, l);
digitalWrite(E, l);
digitalWrite(F, l);
digitalWrite(G, d);
blinkDP(); // Função para piscar o ponto 2 vezes


//acende os leds que representam o número 1

digitalWrite(A, d);
digitalWrite(B, l);
digitalWrite(C, l);
digitalWrite(D, d);
digitalWrite(E, d);
digitalWrite(F, d);
digitalWrite(G, d);
blinkDP();


//acende os leds que representam o número 2

digitalWrite(A, l);
digitalWrite(B, l);
digitalWrite(C, d);
digitalWrite(D, l);
digitalWrite(E, l);
digitalWrite(F, d);
digitalWrite(G, l);
blinkDP();


//acende os leds que representam o número 3

digitalWrite(A, l);
digitalWrite(B, l);
digitalWrite(C, l);
digitalWrite(D, l);
digitalWrite(E, d);
digitalWrite(F, d);
digitalWrite(G, l);
blinkDP();


//acende os leds que representam o número 4

digitalWrite(A, d);
digitalWrite(B, l);
digitalWrite(C, l);
digitalWrite(D, d);
digitalWrite(E, d);
digitalWrite(F, l);
digitalWrite(G, l);
blinkDP();


//acende os leds que representam o número 5

digitalWrite(A, l);
digitalWrite(B, d);
digitalWrite(C, l);
digitalWrite(D, l);
digitalWrite(E, d);
digitalWrite(F, l);
digitalWrite(G, l);
blinkDP();


//acende os leds que representam o número 6

digitalWrite(A, d);
digitalWrite(B, d);
digitalWrite(C, l);
digitalWrite(D, l);
digitalWrite(E, l);
digitalWrite(F, l);
digitalWrite(G, l);
blinkDP();



//acende os leds que representam o número 7

digitalWrite(A, l);
digitalWrite(B, l);
digitalWrite(C, l);
digitalWrite(D, d);
digitalWrite(E, d);
digitalWrite(F, d);
digitalWrite(G, d);
blinkDP();


//acende os leds que representam o número 8digitalWrite(A, l);

digitalWrite(B, l);
digitalWrite(C, l);
digitalWrite(D, l);
digitalWrite(E, l);
digitalWrite(F, l);
digitalWrite(G, l);
blinkDP();


//acende os leds que representam o número 9

digitalWrite(A, l);
digitalWrite(B, l);
digitalWrite(C, l);
digitalWrite(D, d);
digitalWrite(E, d);
digitalWrite(F, l);
digitalWrite(G, l);
blinkDP();

}

void blinkDP() { // Faz o DP piscar 2 vezes.

for (int i=0; i<=3; i++) {
if (ligaPonto) {
digitalWrite(PT, l);
} else {
digitalWrite(PT, d);

}

ligaPonto = !ligaPonto;

delay(300);

}



}

Nenhum comentário:

Postar um comentário

Postagens mais visitadas