Good Morning. I am having a problem with my code, I need a variable, that I call mem to change along the program, but it always gives me these two erros:
A_funceminar_sem_Sonar.ino:10:5: error: redefinition of 'int mem'
A_funceminar_sem_Sonar.ino:1:5: error: 'int mem' previously declared here
Error compiling.
int mem;
int analogPin = A3; // Luz
int analogPin1 = A4;
int analogPin2 = A5;
int val = 0;
int val_1 = 0;
int val_2 = 0;
int mem = 0;
void setup() {
pinMode(analogPin, INPUT);
pinMode(analogPin1, INPUT);
pinMode(analogPin2, INPUT);
pinMode(13, OUTPUT); // Motor Rodas
pinMode(12, OUTPUT);
pinMode(11, OUTPUT); // PWM
pinMode(5, OUTPUT); // Motor Inclina
pinMode(6, OUTPUT);
pinMode(9, OUTPUT); // PWM
pinMode(7, OUTPUT); // Motor Elevador
pinMode(8, OUTPUT);
pinMode(10, OUTPUT); // PWM
}
void loop() {
val = analogRead(analogPin);
val_1 = analogRead(analogPin1); // Linha do Meio
val_2 = analogRead(analogPin2);
digitalWrite(13, HIGH);
digitalWrite(12, LOW);
analogWrite(11, 120);
delay(1);
if(val_1 >= 700 && val >= 700 && val_2 >= 700){
digitalWrite(13, LOW);
digitalWrite(12, LOW);
analogWrite(11, 0);
delay(1000);
if (mem == 0) { // Com peça
delay(1000);
mem = 1;
digitalWrite(7, HIGH); // Sobe Elevador
digitalWrite(8, LOW);
analogWrite(10, 255);
delay(3500);
digitalWrite(7, LOW); // Para Elevador
digitalWrite(8, LOW);
analogWrite(10, 0);
delay(1000);
digitalWrite(5, HIGH); // Inclina
digitalWrite(6, LOW);
analogWrite(9, 255);
delay(1000);
digitalWrite(5, LOW); // Para Inclina
digitalWrite(6, LOW);
analogWrite(9, 0);
delay(1000);
digitalWrite(13, HIGH);
digitalWrite(12, LOW);
analogWrite(11, 120);
delay(2000);}
else { // Sem Peça
delay(1000);
mem = 0;
digitalWrite(7, LOW); // Desce Elevador
digitalWrite(8, HIGH);
analogWrite(10, 255);
delay(3000);
digitalWrite(7, LOW); // Para Elevador
digitalWrite(8, LOW);
analogWrite(10, 0);
delay(1000);
digitalWrite(5, LOW); // Inclina
digitalWrite(6, HIGH);
analogWrite(9, 255);
delay(1000);
digitalWrite(5, LOW); // Para Inclina
digitalWrite(6, LOW);
analogWrite(9, 0);
delay(1000);
digitalWrite(13, HIGH);
digitalWrite(12, LOW);
analogWrite(11, 120);
delay(2000);}
}
}
I did search on google and stuff, but I didnt find any solution. It really looks easy to solve, but neither me or my teacher knows the problem.
I hope you guys can help me. Thank you.