/* --------------------------
Prof. Ricardo Prediger
Programador: Seu nome
Exercício - Display 7 Segmentos
-------------------------- */
// Definições dos Terminais do circuito
// Display de 7 segmentos
#define DISP_7_SEG_A 8
#define DISP_7_SEG_B 9
#define DISP_7_SEG_C 3
#define DISP_7_SEG_D 4
#define DISP_7_SEG_E 5
#define DISP_7_SEG_F 7
#define DISP_7_SEG_G 6
#define DISP_7_SEG_DP 2
#define DISP_LIGADO LOW
#define DISP_DESLIGADO HIGH
// LED
#define PIN_LED 10
void setup() {
Serial.begin(9600);
pinMode(DISP_7_SEG_A, OUTPUT);
pinMode(DISP_7_SEG_B, OUTPUT);
pinMode(DISP_7_SEG_C, OUTPUT);
pinMode(DISP_7_SEG_D, OUTPUT);
pinMode(DISP_7_SEG_E, OUTPUT);
pinMode(DISP_7_SEG_F, OUTPUT);
pinMode(DISP_7_SEG_G, OUTPUT);
pinMode(DISP_7_SEG_DP, OUTPUT);
}
void Mostrar_Valor_Display(int numero){
switch (numero){
case 0:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_LIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_LIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 0 no Display");
break;
case 1:
digitalWrite(DISP_7_SEG_A, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_B, DISP_LIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_E, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_F, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_G, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 1 no Display");
break;
case 2:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_LIGADO);
digitalWrite(DISP_7_SEG_C, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_LIGADO);
digitalWrite(DISP_7_SEG_F, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 2 no Display");
break;
case 3:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_LIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_F, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 3 no Display");
break;
case 4:
digitalWrite(DISP_7_SEG_A, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_B, DISP_LIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_E, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 4 no Display");
break;
case 5:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 5 no Display");
break;
case 6:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_LIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 6 no Display");
break;
case 7:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_LIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_E, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_F, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_G, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 7 no Display");
break;
case 8:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_LIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_LIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 8 no Display");
break;
case 9:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_LIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 9 no Display");
break;
case 10:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_LIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_E, DISP_LIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 10 no Display");
break;
case 11:
digitalWrite(DISP_7_SEG_A, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_B, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_LIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 11 no Display");
break;
case 12:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_C, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_LIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 12 no Display");
break;
case 13:
digitalWrite(DISP_7_SEG_A, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_B, DISP_LIGADO);
digitalWrite(DISP_7_SEG_C, DISP_LIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_LIGADO);
digitalWrite(DISP_7_SEG_F, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 13 no Display");
break;
case 14:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_C, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_D, DISP_LIGADO);
digitalWrite(DISP_7_SEG_E, DISP_LIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 14 no Display");
break;
case 15:
digitalWrite(DISP_7_SEG_A, DISP_LIGADO);
digitalWrite(DISP_7_SEG_B, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_C, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_D, DISP_DESLIGADO);
digitalWrite(DISP_7_SEG_E, DISP_LIGADO);
digitalWrite(DISP_7_SEG_F, DISP_LIGADO);
digitalWrite(DISP_7_SEG_G, DISP_LIGADO);
digitalWrite(DISP_7_SEG_DP, DISP_DESLIGADO);
Serial.println("Numero 15 no Display");
break;
default:
Serial.println("Erro! Valor não correspondente");
}
}
void loop() {
int count;
for(count=0; count <=15; count++){
Mostrar_Valor_Display(count);
delay(1000);
}
}