11 de fevereiro de 2013

Dado Eletrônico

Bom dia!!!! Alô alô!!
Um projeto fácil e simples. Pressionou o botão e acontece o sorteio dos números.


Agora podemos dar uma incrementada e incluir mais Leds formando outros dados. Jogar WAR com os dados eletrônicos fica maneiro! Hehehe...

Ta aí o esquema elétrico e o código fonte para o arduino.

Valeu! Abraços!



/*----------------------------
 D A D O  E L E T R O N I C O
 FELLIPE COUTO  -  11/02/2013
 ---------------------------*/

int led[7] = {2, 3, 4, 5, 6, 7, 8}; //Pinos dos LEDs
int dado[7][7] = {
  {0, 0, 0, 0, 0, 0, 0}, //ZERO
  {0, 0, 0, 0, 0, 0, 1}, //UM
  {0, 0, 1, 0, 0, 1, 0}, //DOIS
  {0, 0, 1, 0, 0, 1, 1}, //TRES
  {1, 0, 1, 1, 0, 1, 0}, //QUATRO
  {1, 0, 1, 1, 0, 1, 1}, //CINCO
  {1, 1, 1, 1, 1, 1, 0}  //SEIS
};

void setup(){
  for (int i=0; i<7; i++){ //Configura os pinos dos LEDs como saída.
    pinMode(led[i], OUTPUT);
  }
  randomSeed(analogRead(0)); //Para o random não repetir a sequencia.
}

void loop(){
  if (analogRead(1) == 1023){
    sorteio();
  }
}

void sorteio(){
  int t = 30;
  for (int x=0; x<20; x++){
    int n = random(6) + 1; //Numero aleatorio para ser exibido. De 1 a 6.
    t = t + 10; //Incrementa o valor de t para ir aumentando o delay.

    for (int i=0; i<7; i++){ //Todos apagados.
      digitalWrite(led[i], dado[0][i]);
    }
    delay(t);
    
    for (int i=0; i<7; i++){ //Exibe o numero aleatorio da variável n.
      digitalWrite(led[i], dado[n][i]);
    }
    delay(t);
  }
}

Nenhum comentário:

Postar um comentário