Jogo Robo - Linguagem C
Por: Hugo.bassi • 7/6/2018 • 3.688 Palavras (15 Páginas) • 250 Visualizações
...
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 o LCD
lcd.print("ROBOT GAME"); //escreve no LCD
lcd.setCursor(0,1);
lcd.print("CONECTE ANDROID");
musica(); //chama rotina que toca a música de inicio
}
//LOOP
void loop() {
//SERIAL
//LEITURA DA PORTA SERIAL
int reading=0;
while(reading == 0){
if(bluetooth.available() > 0){
stringGeral = String("");
while(bluetooth.available()){
stringGeral += char(bluetooth.read());
delay(1);
}
divideDados();
reading=1;
}
}
//COMANDOS RECEBIDOS VIA BLUETOOTH
//COMANDO CONECTADO
if(stringGeral == "CO"){
lcd.clear(); //limpa o lcd
lcd.print("CONECTADO A"); //escreve
lcd.setCursor(0,1); //posiciona o cursor na segunda linha
lcd.print("ANDROID"); //escreve
tone(som, 400, 200); //sinais sonoros para confirmar a conexão
tone(som, 1000, 200); //
delay(1000); //aguarda 1 segundo
lcd.clear(); //limpa o LCD
lcd.print("PRESSIONE"); //escreve
lcd.setCursor(0,1); //posiciona o cursor na segunda linha
lcd.print("START..."); //escreve
inicio=1; //habilita o botão start
movimento=0; //desabilita a movimentação do robo
}
//COMANDO DESCONECTADO
if(stringGeral == "disconect"){
lcd.clear(); //limpa o LCD
lcd.print("DESCONECTADO DE"); //escreve
lcd.setCursor(0,1); //posiciona o cursor na segunda linha
lcd.print("ANDROID"); //escreve
tone(som, 1000, 200); //sinais sonoros para confirmar a desconexão
tone(som, 400, 200); //
delay(1000); //espera 1 segundo
lcd.clear();
lcd.print("ROBOT GAME"); //escreve no LCD
lcd.setCursor(0,1);//posiciona o cursor na segunda linha
lcd.print("CONECTE ANDROID"); //escreve
musica(); //chama rotina que toca a música de inicio
newImage=0; //desabilita a escrita de um novo item
level=1; //reinicia o level para o nivel 1
inicio=0; //desabilita o botão start
movimento=0; //desabilita a movimentação do ROBO
}
//COMANDO START
if(stringGeral == "start" && inicio == 1){
time2 = 0; //zera a variável que armazenará o tempo que o programa está ao fim do jogo
time1 = millis(); //armazena o tempo que o programa
...