Ошибка-else помогите с данным скетчем управление серво приводом на ардуино

Помогите, я начинающий пищу код под ардуино для управления серво приводом. Если можете, то отредактируйте пожалуйста.

#include <Servo.h>
int joyX = 0;
int angL = 0;
Servo myservo;

void setup() {
  myservo.attach(9);
  pinMode(joyX, INPUT);
  Serial.begin(9600);

}

void loop() {
  int val = (analogRead(joyX) / 64) - 8;
  if (val > 0) {
    angL = angL - abs(val);
  }
}

       else{ 
  if (val < 0 ) {
    angl = angl - abs(val);
  
  }
  if (angL < 0)angl = 0
  if (angL < 180)angl = 180
  Serial.print("Power");
  Serial.println(val);
  Serial.print("Angle:");
  Serial.println(angL);
  myservo.write(angL);
  int spd = 500;
  if (val = 0) {
    spd = 600 / abs(val);
  }
  Serial.print("Speed:");
  Serial.println(spd);
  Serial.println("-----------");
  delay(spd);
}

Ответы (1 шт):

Автор решения: Igor
  if (val > 0) {
    angL = angL - abs(val);
  }
/*}*/

       else/*{ */
  if (val < 0 ) {
    angl = angl - abs(val);
  
  }

Переменная angl - необъявлена. Если она то же самое, что angL, то if/else не нужен.

if (val == 0) {
        ^^
→ Ссылка