const byte pinSegA = 4; const byte pinSegB = 5; const byte pinSegC = 7; const byte pinSegD = 8; const byte pinSegE = 9; const byte pinSegF = 3; const byte pinSegG = 2; const byte pinSegDP = 6; const byte pinBotao = 10; byte estadoAnterior = 0; byte sorteio; void setup() { pinMode(pinSegA, OUTPUT); pinMode(pinSegB, OUTPUT); pinMode(pinSegC, OUTPUT); pinMode(pinSegD, OUTPUT); pinMode(pinSegE, OUTPUT); pinMode(pinSegF, OUTPUT); pinMode(pinSegG, OUTPUT); pinMode(pinSegDP, OUTPUT); pinMode(pinBotao, INPUT_PULLUP); Serial.begin(9600); testeLeds(); } void loop() { if (digitalRead(pinBotao) == HIGH) estadoAnterior = 0; if (digitalRead(pinBotao) == LOW && estadoAnterior == 0) { estadoAnterior = 1; sorteio = random(1, 9); if (sorteio == 1) exibe1(); if (sorteio == 2) exibe2(); if (sorteio == 2) exibe3(); if (sorteio == 4) exibe4(); if (sorteio == 5) exibe5(); if (sorteio == 6) exibe6(); if (sorteio == 7) exibe7(); if (sorteio == 8) exibe8(); if (sorteio == 9) exibe9(); } } void testeLeds() { apagaTudo(); delay(150); exibe1(); delay(150); exibe2(); delay(150); exibe3(); delay(150); exibe4(); delay(150); exibe5(); delay(150); exibe6(); delay(150); exibe7(); delay(150); exibe8(); delay(150); exibe9(); delay(150); apagaTudo(); } void apagaTudo() { digitalWrite(pinSegA, LOW); digitalWrite(pinSegB, LOW); digitalWrite(pinSegC, LOW); digitalWrite(pinSegD, LOW); digitalWrite(pinSegE, LOW); digitalWrite(pinSegF, LOW); digitalWrite(pinSegG, LOW); digitalWrite(pinSegDP, LOW); } void ligaTudo() { digitalWrite(pinSegA, HIGH); digitalWrite(pinSegB, HIGH); digitalWrite(pinSegC, HIGH); digitalWrite(pinSegD, HIGH); digitalWrite(pinSegE, HIGH); digitalWrite(pinSegF, HIGH); digitalWrite(pinSegG, HIGH); digitalWrite(pinSegDP, HIGH); } void exibe1() { apagaTudo(); digitalWrite(pinSegB, HIGH); digitalWrite(pinSegC, HIGH); Serial.println("Exibindo: 1"); } void exibe2() { apagaTudo(); digitalWrite(pinSegA, HIGH); digitalWrite(pinSegB, HIGH); digitalWrite(pinSegG, HIGH); digitalWrite(pinSegE, HIGH); digitalWrite(pinSegD, HIGH); Serial.println("Exibindo: 2"); } void exibe3() { apagaTudo(); digitalWrite(pinSegA, HIGH); digitalWrite(pinSegB, HIGH); digitalWrite(pinSegG, HIGH); digitalWrite(pinSegC, HIGH); digitalWrite(pinSegD, HIGH); Serial.println("Exibindo: 3"); } void exibe4() { apagaTudo(); digitalWrite(pinSegF, HIGH); digitalWrite(pinSegG, HIGH); digitalWrite(pinSegB, HIGH); digitalWrite(pinSegC, HIGH); Serial.println("Exibindo: 4"); } void exibe5() { apagaTudo(); digitalWrite(pinSegA, HIGH); digitalWrite(pinSegF, HIGH); digitalWrite(pinSegG, HIGH); digitalWrite(pinSegC, HIGH); digitalWrite(pinSegD, HIGH); Serial.println("Exibindo: 5"); } void exibe6() { apagaTudo(); digitalWrite(pinSegA, HIGH); digitalWrite(pinSegF, HIGH); digitalWrite(pinSegG, HIGH); digitalWrite(pinSegE, HIGH); digitalWrite(pinSegC, HIGH); digitalWrite(pinSegD, HIGH); Serial.println("Exibindo: 6"); } void exibe7() { apagaTudo(); digitalWrite(pinSegA, HIGH); digitalWrite(pinSegB, HIGH); digitalWrite(pinSegC, HIGH); Serial.println("Exibindo: 7"); } void exibe8() { apagaTudo(); digitalWrite(pinSegA, HIGH); digitalWrite(pinSegB, HIGH); digitalWrite(pinSegC, HIGH); digitalWrite(pinSegD, HIGH); digitalWrite(pinSegE, HIGH); digitalWrite(pinSegF, HIGH); digitalWrite(pinSegG, HIGH); Serial.println("Exibindo: 8"); } void exibe9() { apagaTudo(); digitalWrite(pinSegA, HIGH); digitalWrite(pinSegB, HIGH); digitalWrite(pinSegC, HIGH); digitalWrite(pinSegD, HIGH); digitalWrite(pinSegF, HIGH); digitalWrite(pinSegG, HIGH); Serial.println("Exibindo: 9"); }