Jogo do reflexo: Divirta-se e melhore os seus reflexos

Já pensou em fazer um joguinho com Arduino? Com mais um par de LEDs e botões é possível desenvolver coisas interessantes, dentre elas, um teste de reflexo. Isso mesmo, vamos medir seu reflexo e de mais alguém, e em seguida compará-los. Quem de vocês é o mais rápido?

A proposta deste projeto subir um pouco o nível de dificuldade integrando conceitos de entrada, saída e temporização.

O algoritmo é o seguinte:

  1. Gerar um intervalo randômico de no máximo 7 segundos;
  2. Piscar os LEDs de forma emocionante;
  3. Aguardar os botões serem pressionados e registrar o tempo;
  4. Apagar ambos os LEDs e aguardar 1 segundo (suspense);
  5. Acender estaticamente o LED de quem pressionou mais rápido.

Também será impresso via serial algumas mensagens e valores.

 

Montagem

Para isso, vamos precisar de:

 

Para ilustrar o circuito, nada melhor do que o Fritzing. Já ouviu falar dele? Você deve ter visto outros circuítos aqui no blog e em outros lugares que também que o utilizam. Se quiser aprender mais a respeito, dá uma olhada neste tutorial.

Faça com calma para evitar problemas:

 

Ilustração do circuíto

 

Cuidado!

Não negligencie os resistores, pessoa que está lendo. Eles protegem o chip ATmega328 do seu estimado Arduino contra sobrecarga de corrente, por isso não deixe de utilizá-los! Os resistores ligados aos LEDs são de 220 ohms e os ligados aos botões, 10K ohms.

 

Código

Agora vamos ao código. Basta copiar, colar na IDE e carregá-lo para o Arduino:

Reparou na função millis? Ela retorna o tempo em milissegundos desde quando o Arduino é ligado e é super importante para nosso jogo. É uma função nativa, útil para trabalharmos com tempo. Neste tópico em inglês do fórum oficial do Arduino há mais explicações.

Lembre-se de abrir o Monitor Serial para visualizar as mensagens:

Abra o Monitor Serial com Ctrl + Shift + M

 

Finalizando

É notável o potencial do Arduino como base para criar montagens interativas e para entretenimento. Devemos lembrar que nem todo projeto precisa necessariamente de uma finalidade prática, isto é, a diversão pode estar intrínseca e ser o objetivo final do desenvolvimento. Afinal, é justamente essa a definição de hobby.

E então, já se sente mais confiante? A Eletrogate sugere que você leia e entenda o código linha por linha para que projetos desafiadores se tornem mais confortáveis no futuro. Que tal modificá-lo e deixá-lo do seu jeito? Ou talvez usar um Arduino diferente?

Divirta-se!

Avaliação: 5.0/5. De 4 votos.
Espere por favor...
Victor Castro
Victor Castro
Estudante de Sistemas de Informação na UFMG, prefere desenvolver algoritmos do que fazer circuitos. Ama ensinar e surpreender o interlocutor com novas perspectivas. Joga Uno e Rummikub nos fins de semana.
Acesse nossa loja