Erro na estrutura if - else

Olá, amigos. Segue código que usei de um livro:
const int POT = 0;
const int RLED=11;
const int GLED=10;
const int YLED=9;
int val=0;

void setup()
{
pinMode(RLED, OUTPUT);
pinMode(GLED, OUTPUT);
pinMode(YLED, OUTPUT);
}
void loop()
{
val = analogRead(POT);
if(val < 341);
{
digitalWrite(RLED, HIGH);
digitalWrite(GLED, LOW);
digitalWrite(YLED, LOW);
}
else if (val > 682);
{
digitalWrite(RLED, LOW);
digitalWrite(GLED, LOW);
digitalWrite(YLED, HIGH);
}
else; (LINHA COM PROBLEMA)
{
digitalWrite(RLED, LOW);
digitalWrite(GLED, HIGH);
digitalWrite(YLED, LOW);
}
}

Como está destacado acima, nessa linha aparece o problema descrito pelo próprio arduino como " ‘else’ sem um ‘if’ prévio." Mas esse código está como o do livro. O que quero fazer aqui é controlar 3 leds com um potenciômetro de 10k de maneira que abaixo de um determinado valor analógico de 341 bits acenda o led vermelho, acima do valor 682 acenda o led amarelo e fora disso, ‘else’ acenda o led verde. Poderiam me ajudar a entender qual o problema desse código?

Fiz pequenos ajustes no código, copia e cola e vê se funciona.

const int POT = 0;
const int RLED=11;
const int GLED=10;
const int YLED=9;
int val=0;

void setup() {
	pinMode(RLED, OUTPUT);
	pinMode(GLED, OUTPUT);
	pinMode(YLED, OUTPUT);
}

void loop() {
	val = analogRead(POT);
    
	if(val < 341) {
		digitalWrite(RLED, HIGH);
		digitalWrite(GLED, LOW);
		digitalWrite(YLED, LOW);
	} else if (val > 682) {
		digitalWrite(RLED, LOW);
		digitalWrite(GLED, LOW);
		digitalWrite(YLED, HIGH);
	} else {
		digitalWrite(RLED, LOW);
		digitalWrite(GLED, HIGH);
		digitalWrite(YLED, LOW);
	}
}

@Guilherm.Willemen esse erro é bem simples. Erro de sintaxe.

Observa como você terminou o primeiro ‘if’, com um ‘;’

Mas o IF conta com uma sentença de verificação e o código de tratamento dessa sentença vem entre ‘{ }’

Você indicou para o pré-processador do compilador que o comando ‘if’ terminou no ‘;’

O correto seria:

if (sentença de verficação) {

}
else {

}

Não tem o ‘;’ fechando a linha do código

Abraços.

Nem percebi, só organizei o que ele tinha feito, falta de tempo.

1 curtida