Offline
Newbie
Karma: 0
Posts: 2
|
 |
« on: October 15, 2012, 05:16:32 pm » |
Olá a todos, queria pedir ajuda com uma prograçao, pois nunca programei e mesmo estando estudando a linguagem, nao estou conseguindo avançar. Queria pelo menos dicas de como conseguir. Tenho que desenvolver a programaçao para um projeto que funciona assim:
O projeto tem como objetivo desenvolver um jogo que utiliza o microcomputador LilyPad Arduino, para o qual seria desenvolvido uma programação que atendesse as regras do jogo WearClaps, que são: Jogo em dupla no qual cada jogador, equipado com seu Wearable ou tangível que possui quatro cores diferentes (vermelho, amarelo,azul,verde), deve se movimentar e relacionar a cor sorteada pelo master com a respectiva cor no seu dispositivo para obedecer o comando. Como se trata de um jogo colaborativo, é a dupla que vence ou perde. O dispositivo se comunica com o master através do Xbee. Conforme o jogo avança, as fases se tornam mais difíceis, pois o intervalo de tempo entre uma cor e outra mostrada pelo master diminui. Enquanto acertam-se as cores, o jogo prossegue. Quando se erra as cores ou o tempo termina, a dupla perde o jogo.
Tenho um codigo ainda muito incompleto, e sei tbem que há erros nele, mas nao sei resolver.
//Definiçao de constantes// const int redPin=10; const int portabuzzer = 11; const int bluePin = 5; const int yellowPin=7; const int greenPin=9; //Definiçao de variaveis// int yellowValue; int greenValue; int redValue; int blueValue; int valorlido = 'Y'; int corcerta; int corerrada;
void setup() { pinMode(portabuzzer, OUTPUT);
pinMode(bluePin, INPUT); digitalWrite(bluePin, HIGH); blueValue = digitalRead(bluePin);
pinMode(yellowPin, OUTPUT); digitalWrite(yellowPin, HIGH); yellowValue = digitalRead(yellowPin);
pinMode(greenPin, INPUT); digitalWrite(greenPin, HIGH); greenValue = digitalRead(greenPin);
pinMode(redPin, INPUT); digitalWrite(redPin, HIGH); redValue = digitalRead(redPin); Serial.begin(9600); Serial.println('passou por aqui'); } void loop() { valorlido=Serial.read(); blueValue = digitalRead(bluePin); if (blueValue == LOW) { Serial.println ("blue") ; beep(portabuzzer,1024,150); } yellowValue = digitalRead(yellowPin); if (yellowValue == LOW) { Serial.println ("amarelo"); beep(portabuzzer,1024,150); if(valorlido=='Y') { Serial.println ("cor certa") ; } else{ Serial.println ("cor errada"); } } greenValue = digitalRead(greenPin); if (greenValue == LOW) { Serial.println ("verde") ; beep(portabuzzer,1024,150); }
redValue = digitalRead(redPin); if (redValue == LOW) { Serial.println ("vermelho") ; beep(portabuzzer,1024,150); } }
void beep (unsigned char speakerPin, int frequencyInHertz, long timeInMilliseconds) { int x; long delayAmount = (long)(1000000/frequencyInHertz); long loopTime = (long)((timeInMilliseconds*1000)/(delayAmount*2)); for (x=0;x<loopTime;x++) { digitalWrite(speakerPin,HIGH); delayMicroseconds(delayAmount); digitalWrite(speakerPin,LOW); delayMicroseconds(delayAmount); } }
Agredeceria mto se alguem pudesse ajudar.
|