Programação
9º ano - TIC
O Tinkercad é um aplicativo gratuito e fácil de usar para projetos 3D, componentes eletrónicos e codificação.
Vamos realizar o seguinte projeto: Instalação para jogo de memória com 4 leds.
Circuito Eléctrico
const int buzzer = 10;
const int ledPin = 6;
const int ledPin2 = 7;
const int ledPin3 = 8;
const int ledPin4 = 9;
int buttonState = 0;
int buttonState2 = 0;
int buttonState3 = 0;
int buttonState4 = 0;
int ia=2;
int cont=0;
int zero;
int um;
int dois;
int contador=0;
int x=0;
int resp1;
int resp2;
int resp3;
long temp=0;
void setup() {
pinMode(buzzer, OUTPUT);
pinMode(ledPin, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
pinMode(ledPin4, OUTPUT);
while(ia<=5){
pinMode(ia,OUTPUT);
ia++;
}
Serial.begin(9600);
}
void loop() {
digitalWrite(buzzer, 0);
buttonState = digitalRead(A0);
buttonState2 = digitalRead(A1);
buttonState3 = digitalRead(A2);
buttonState4 = digitalRead(A3);
while(dois==0){
fase();
}
if(cont>=2){
resp();
}
if(contador>=3){
comp();
}
}
void fase(){
while(cont<=2){
temp=random(100,1000);
ia=random(2,6);
digitalWrite(ia, 1);
delay(temp);
digitalWrite(ia, 0);
if(cont==0){
zero=ia;
delay(500);
}
if(cont==1){
um=ia;
delay(500);
}
if(cont==2){
dois=ia;
delay(500);
}
cont++;
}
}
void resp(){
if(buttonState==1){
digitalWrite(ledPin, 1);
x=4;
delay(500);
contador++;
}
if(buttonState2==1){
digitalWrite(ledPin2, 1);
x=5;
delay(500);
contador++;
}
if(buttonState3==1){
digitalWrite(ledPin3, 1);
x=3;
delay(500);
contador++;
}
if(buttonState4==1){
digitalWrite(ledPin4, 1);
x=2;
delay(500);
contador++;
}
if(contador<=3){
if(contador==1){
resp1=x;
delay(100);
}
if(contador==2){
resp2=x;
delay(100);
}
if(contador==3){
resp3=x;
delay(100);
}
}
digitalWrite(ledPin3, 0);
digitalWrite(ledPin4, 0);
digitalWrite(ledPin, 0);
digitalWrite(ledPin2, 0);
}
void comp(){
if(zero==resp1 && um == resp2 && dois == resp3){
Serial.println("correto");
tone(buzzer,330,100);
delay(100);
tone(buzzer,440,100);
delay(500);
}
else{
Serial.println("incorreto");
tone(buzzer,700,100);
delay(100);
tone(buzzer,440,100);
delay(500);
}
cont=0;
contador=0;
zero=0;
um=0;
dois=0;
resp1=0;
resp2=0;
resp3=0;
}
Sem comentários:
Enviar um comentário