Índice:

Tap Tap Rainbow - um jogo de reação rápida para 2 jogadores: 4 etapas (com imagens)
Tap Tap Rainbow - um jogo de reação rápida para 2 jogadores: 4 etapas (com imagens)

Vídeo: Tap Tap Rainbow - um jogo de reação rápida para 2 jogadores: 4 etapas (com imagens)

Vídeo: Tap Tap Rainbow - um jogo de reação rápida para 2 jogadores: 4 etapas (com imagens)
Vídeo: ТАКОВ МОЙ ПУТЬ В L4D2 2024, Novembro
Anonim
Tap Tap Rainbow - um jogo de reação rápida para 2 jogadores
Tap Tap Rainbow - um jogo de reação rápida para 2 jogadores
Tap Tap Rainbow - um jogo de reação rápida para 2 jogadores
Tap Tap Rainbow - um jogo de reação rápida para 2 jogadores
Tap Tap Rainbow - um jogo de reação rápida para 2 jogadores
Tap Tap Rainbow - um jogo de reação rápida para 2 jogadores

A string LED usa apenas 3 fios. Então só precisei de uma alimentação de 5V (vermelho), aterramento (branco) e sinal (verde). Se você também usa um Espruino, certifique-se de verificar os tutoriais em seu site. O dos LEDs RGB é explicado de forma muito clara.

Cortei a string de LED em 3 partes de 6 LEDs e conectei-os com fios extras. Desta forma, todos os LEDs estão usando o mesmo array, o que me economiza 2 portas extras na placa e é mais fácil de programar.

Conectar os botões foi um pouco mais difícil. Eu queria usar o menor número possível de portas na placa, então estava pensando em usar uma configuração I2C, mas falhei terrivelmente nisso. Eu não conseguia fazer funcionar, então cuidei de outra coisa.

Eventualmente eu encontrei um tutorial sobre o Espruino para um teclado que é conectado como uma matriz de teclado com 16 botões. Isso parecia bastante fácil de implementar, então fui assim. Eu só precisava de 12 botões, então precisaria de uma matriz 3x4.

Em uma matriz de teclado, todos os botões são conectados em colunas e linhas. Desta forma, você só precisa de 8 portas para 16 botões. Na minha configuração, só precisei de 2 vezes 6 botões, o que dá um total de 7 portas na placa (4 linhas com 3 colunas). Ainda é muito menos do que conectar os 12 botões separadamente e o módulo Teclado do Espruino é realmente fácil de usar.

Encontrei um bom tutorial sobre teclado em noções básicas de circuito que me ajudou muito com a fiação dos botões.

Quando consegui conectar todos os meus botões, fiquei muito frustrado porque os conectores escorregavam constantemente e estava ficando tarde. Então, colei tudo na caixa e esqueci totalmente de tirar fotos. Também não é muito amigável no dia em que preciso reconectar um fio em 1 das caixas.

Etapa 3: escrever o código

Escrevendo o Código
Escrevendo o Código
Escrevendo o Código
Escrevendo o Código
Escrevendo o Código
Escrevendo o Código

Espruino é programado em Javascript, então para mim é muito menos complexo do que escrever código para Arduino.

O código pode usar alguma otimização, mas ele faz o trabalho por enquanto. Há também um bug (talvez seja um recurso: D) onde você não pode pressionar 2 botões exatamente ao mesmo tempo. Mas torna um pouco mais desafiador (leia-se frustrante) jogar o jogo, então não investiguei o problema ainda, meio que gosto desse jeito (se você perder, é extremamente frustrante).

Programar os LEDs é meio fácil. Cada LED na string tem 3 valores em uma matriz. Portanto, se você tiver uma matriz como [255, 0, 0, 255, 0, 0], você terá os primeiros 2 LEDs vermelhos.

Em uma visão geral rápida.

1. Primeiro eu defino minhas cores e faço uma série de todas as cores

2. Em seguida, defino as configurações do player, como os IDs dos botões e qual índice cada jogador tem na string de LED

3. No início do jogo, embaralhei todas as cores no array do arco-íris e armazenei essas informações em um novo Array. Então eu reinicio todos os LEDs e acendo os LEDs superiores com as cores do arco-íris embaralhadas

4. Finalmente, temos o código que escuta os principais eventos. Eu armazeno todas as entradas em um array e verifico se este array está na seqüência correta.

5. Um extra legal que adicionei ontem que os vencedores são tratados com uma incrível animação de arco-íris: D

Ainda tenho muitas coisas em mente para torná-lo mais divertido, mas isso é algo para depois;)

Não consigo fazer upload do código-fonte completo, então coloquei no Gitlab

gitlab.com/marzsman/tap_tap_rainbow

Etapa 4: Divirta-se com isso !!! ?

Image
Image
Divirta-se com isso !!! ?
Divirta-se com isso !!! ?

Quando minha filha e eu estávamos escrevendo sua ideia e pensando em como deveria ser, eu imediatamente gostei da ideia. Mas devo dizer que nunca pensei que seria tão divertido de jogar. Já tivemos algumas grandes batalhas de toque do arco-íris: D

Espero que todos se divirtam tanto quanto nós.

É também o primeiro projeto completo que fiz em tão pouco tempo e algo que fiz com minha filha de 8 anos E também é meu primeiro instrutível (FINALMENTE!), Então sim, de certa forma é um projeto muito especial para mim. Então espero que gostem!

Se você tiver dúvidas ou sugestões, fico feliz em ouvi-las!

Recomendado: