Jogo Robo - Linguagem C
Por: LRibeiro1994 • 15/3/2017 • Projeto de pesquisa • 3.687 Palavras (15 Páginas) • 317 Visualizações
/* JOGO - ROBO NO LCD V1.0
PROGRAMAÇÃO PARA SER USADA COMO REFERÊNCIA PARA ESTUDOS OU JUNTO AO APLICATIVO PARA ANDROID "jogoRobo".
JOGO ONDE O JOGADOR CONTROLA UM ROBO ATRAVÉS DO SMARTPHONE ANDROID
PARA CAPTURAR ITENS PELO LCD,O JOGO TERMINA COM A CAPTURA DE 10 IMAGENS,
VENCE QUEM CONSEGUIR NO MENOR TEMPO!
FUNCIONA APENAS COM O APLICATIVO "jogoRobo".
LUCAS RIBEIRO ALVES
*/
//PINOS DO ARDUINO QUE SERÃO USADOS PARA OS BOTÕES E O SPEACKER
#define pinoLed 9 //pino para o led de fundo do LCD
#define som 8 //pino para o speacker
//BIBLIOTECAS USADAS E SEUS SETUPS
//incluindo biblioteca
#include <LiquidCrystal.h>
#include <SoftwareSerial.h>
LiquidCrystal lcd(2, 3, 4, 5, 6, 7); //inicializando a biblioteca e definindo os pinos que serão usados para o LCD
SoftwareSerial bluetooth(11,12); //inicializando a biblioteca e definindo os pinos que serão usados na comunicação com o módulo bluetooth (RX, TX)
//CRIANDO MELODIA PARA INICIO DO JOGO
int melodia[] = {660,660,660,510,660,770,380};
int duracaodasnotas[] = {100,100,100,100,100,100,100};
int pausadepoisdasnotas[] ={150,300,300,100,300,550,575};
//CRIANDO CARACTERES 5 POR 8 PIXELS
byte robo[8]={ //caracter do personagem
0b01010,
0b01110,
0b01110,
0b11111,
0b11111,
0b01110,
0b01010,
0b01010,
};
byte skull[8]={ //caracter caveira
0b00000,
0b01110,
0b10001,
0b11011,
0b10101,
0b11011,
0b01110,
0b00000,
};
byte heart[8]={ //caracter coração
0b00000,
0b01010,
0b11111,
0b11111,
0b11111,
0b01110,
0b00100,
0b00000
};
byte smile[8]={ //caracter sorriso
0b00000,
0b01010,
0b01010,
0b00000,
0b10001,
0b10001,
0b01110,
0b00000,
};
byte sad[8]={ //caracter triste
0b00000,
0b01010,
0b01010,
0b00001,
0b01110,
0b10001,
0b10001,
0b00000,
};
byte angry[8]={ //caracter bravo
0b10001,
0b11011,
0b00100,
0b01010,
0b01010,
0b00000,
0b11111,
0b10001,
};
//VARIÁVEIS GLOBAIS
int co, co2, l, l2, c, lR, coR, level=1, up, down, left, right, pwm, newImage=0, movimento=0, inicio=1;; //variáveis integrais globais
float time1, time2, timeEnd; // variáveis globais de tempo
String stringGeral, comando, dadosRecebidos; //strings globais de comunicação serial
//SETUP
void setup() {
bluetooth.begin(9600); //inicia a comunicação com o módulo bluetooth
lcd.begin(16,2); //inicia o LCD com 2 linhas e 16 colunas
//registrando caracteres
lcd.createChar(0, skull); //cria caracter caveira
lcd.createChar(1, heart); //cria caracter coração
lcd.createChar(2, smile); //cria caracter sorriso
lcd.createChar(3, sad); //criar carcter triste
lcd.createChar(4, angry); //cria carcater bravo
lcd.createChar(15, robo); //cria o caracter do personagem robo
//modo de trabalho dos pinos
pinMode(som, OUTPUT);
pinMode(pinoLed, OUTPUT);
digitalWrite(pinoLed, 1);
//Tela de inicio do jogo
lcd.clear(); //limpa
...