sexta-feira, 9 de agosto de 2019

IX - ENCONTRO: DADO VIRTUAL

IX - ENCONTRO: DADO VIRTUAL

Olá turma,, em nosso encontro do dia 02/08/2019 demos uma pausa em nosso guindaste para retomarmos conceitos de eletrônica e programação. Para tal iniciamos um projeto de dado virtual.
Nesta primeira etapa iniciamos a montagem do circuito no Tinkercad e a programação para acender os leds através do arduino.
Eletrônica
Montamos os leds na  protoboard e fizemos as conexões com os pinos do arduino.
Padronizamos:
led1---------------------pino 7
led2---------------------pino 8
led3---------------------pino 9
led4---------------------pino 10
led5---------------------pino 11
led6---------------------pino 12
led7---------------------pino 13

Veja imagem:

Colocamos 2 resistor de 220 ohms nos catodos e ligamos os anodos do leds diretamente nos pinos do arduino.
Caso a montagem fosse física preferível ligar os catodo diretamente no negativo e  em cada anodo colocar um resistor que se conectaria aos pinos do arduino.

Programação:
Criamos variáveis para  para acender cada um dos leds e depois criamos  funções para simular acender todos os leds, apagar todos e acender cada face do dado:
//variaveis para os leds
int led1=7;
int led2=8;
int led3=9;
int led4=10;
int led5=11;
int led6=12;
int led7=13;

void setup()
{
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
  pinMode(led5, OUTPUT);
  pinMode(led6, OUTPUT);
  pinMode(led7, OUTPUT);
 
}

void loop()
{
  //digitalWrite(led4, HIGH);
 piscar();
// fazer1();
  
}
//acender todos
void acenderTudo(){
  digitalWrite(led1, HIGH);
  digitalWrite(led2, HIGH);
  digitalWrite(led3, HIGH);
  digitalWrite(led4, HIGH);
  digitalWrite(led5, HIGH);
  digitalWrite(led6, HIGH);
  digitalWrite(led7, HIGH);
}

//apagar todos
void apagarTudo(){
  digitalWrite(led1, LOW);
  digitalWrite(led2, LOW);
  digitalWrite(led3, LOW);
  digitalWrite(led4, LOW);
  digitalWrite(led5, LOW);
  digitalWrite(led6, LOW);
  digitalWrite(led7, LOW);
}

//piscar todos
void piscar(){
  acenderTudo();
  delay(500);
  apagarTudo();
  delay(500);
}
//fazer 1 (acender led4
void fazer1(){
  digitalWrite(led4, HIGH);
  delay(200);
}

//fazer 2 (acender led3  e led5)
void fazer2(){
  apagarTudo();
  digitalWrite(led3, HIGH);
  digitalWrite(led5, HIGH);
  delay(200);
}
//Seguir o pad
void fazer3(){
  
}

Ficou como tarefa a turma terminar o código até a face 6

Abraço a todos

Nenhum comentário:

Postar um comentário