Jogando Flappy Bird com Arduino 10

Se olharmos para alguns anos atrás podemos lembrar do clássico jogo Flappy Bird que fez muito sucesso entre os usuários da Apple e posteriormente Android. Então surgiram muitos clones do jogo pelo fato do mesmo ter sido tirado das lojas de aplicativos. Existem inúmeras versões online desse jogo e criações usando diversas plataformas. Nesse post vamos mostrar como você pode jogar Flappy Bird com Arduino, montando um circuito com poucos componentes.

Pra quem não conhece o jogo, ele consiste em mover um passarinho entre tubos evitando a colisão. A cada passada pelos tubos o placar é incrementado. Se o passarinho bater nos tubos ou cair no chão o jogo é encerrado. Game Over. 

Lista de Componentes

Para começar a jogar o Flappy Bird com Arduino você vai precisar dos seguintes componentes:

Montagem do Circuito

O Display TFT de 1.8″ tem resolução de 160×128 pixels e é capaz de mostrar 262144 cores (18-bit). Possui também um leitor de cartão SD podendo armazenar imagens. Seu controlador é um ST7735 (datasheet). Para comunicação com o display, usa-se o protocolo SPI utilizando o Hardware SPI do Arduino e alguns pinos adicionais.

O display tem a seguinte pinagem:

Pinagem Display TFT 1.8"

Conecte o Display ao Arduino da seguinte forma:

Tabela Pinagem Circuito

Conecte também uma chave Push Button ao pino 2 do Arduino e um resistor pull-up de 1Kohm e o circuito ficará completo da seguinte forma:

Circuito Completo Flappy Bird com Arduino

 

Instalando as Bibliotecas Necessárias

Instale as bibliotecas GFX e ST7735 da Adafruit utilizando o library manager. Clique em Sketch -> Incluir Biblioteca -> Gerenciar Bibliotecas…

Menu Gerenciador de Bibliotecas IDE Arduino

 

No campo de busca procure pela biblioteca gfx, selecione a biblioteca Adafruit GFX Library e clique em Instalar.

Tela Gerenciador de Bibliotecas IDE Arduino

Procure também pela biblioteca st7735, selecione a biblioteca Adafruit ST7735 Library e clique em Instalar.

Tela Gerenciador de Bibliotecas IDE Arduino

Programa Flappy Bird com Arduino

O programa é baseado no programa original encontrado no Github escrito por Themistokle Benetatos. Foi apenas alterado o valor da constante SKIP_TICKS de 20 para 22 para tirar alguns erros quando os canos verdes são desenhados na tela. Experimente alterar outras constantes, assim você pode mudar o tamanho dos canos ou diminuir a força do pulo do passarinho por exemplo (parâmetro JUMP_FORCE).

Mais detalhes sobre o projeto original podem ser encontrados no Blog MRT-PRODZ.

Gostou do post Jogando Flappy Bird com Arduino? Ajude-nos a melhorar o blog atribuindo uma nota a este tutorial (estrelas no final do artigo), comente e visite nossa loja FILIPEFLOP!

Posts Relacionados

10 Comentários

  1. Bom dia. Tenho o display TFT 2.4 mas não estou conseguindo fazê-lo funcionar utilizando esse código. Devo fazer alguma alteração no código? Pq quando carrego esse ai pro arduino a tela do display fica toda branca. Agradeço muito se me responder.

    1. Boa tarde Jonathan,

      O seu display é mais antigo ? Talvez ele utilize outro tipo de driver. Verifique no post qual o driver apropriado para o seu display e tente outras opções, por favor.

      Abraço!

      Adilson – Equipe FILIPEFLOP

  2. Puxa, nà0 acreditava ser possível rodar um game em um equipo tão restrito, mas hoje tive uma aula de logica e hardware. Muito obrigado.

  3. a proposito, creio que o mesmo rascunho possa ser utillizado um ema tela oled 128×64, não?

  4. Gostaria de saber o que devo alterar no codgo para utilizar o display 2.4 tft lcd shield

  5. No lugar do “Push Button”, posso utilizar um “Mini Push Button”?

    1. Olá Bruno,

      Obrigado pela leitura!

      Sim, você pode usar qualquer tipo de botão desde que feche contato com GND.

      Giovanni Bauermeister
  6. Olá.

    Gostaria de saber se o Display na simulação com o Fritzing é uma edição ou existe mesmo como importá-lo? Gostaria de usá-lo para meu projeto, porém não encontro o arquivo na internet, teria como passá-lo?

    Agradeço.

  7. Como eu faço para conectar esse display com um PIC?

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *