Necesito Ayuda

estoy comenzado en programación con arduino y no es mi fuerte.
me pidieron un programa el cual al momento de ingresar una palabra como murciélago, conforme pase una vocal se encienda un led.
De momento esto es todo lo que tengo, y no funciona agradecería cualquier ayuda.

int incomingByte =0;
int led=1;
void setup(){
pinMode(led, OUTPUT);
Serial.begin(9600);
}

void loop(){
if(Serial.available()>0){
incomingByte=Serial.read();
if(incomingByte=='a'||incomingByte=='e' || incomingByte=='i'){
analogWrite(10,HIGH);
delay(100);
}
if(incomingByte=='o'){
digitalWrite(13,HIGH);
delay(100);
}
if(incomingByte=='u'){
digitalWrite(7,HIGH);
delay(100);
}
}
}

Primero debes cumplir las normas del foro:

  1. Indenta tu codigo
  2. Metelo entre las etiquetas de codigo

En tu codigo veo algunas problemas:

  1. No puedes usar el pin 1 para la comunicacion serie y al mismo tiempo para prender un LED. Reasigna el LED a otro pin.

  2. Cuando pulsas a, e, i para que haces analogWrite(10, HIGH) ? en todo caso pasale analogWrite(10, PWM) donde PWM es un numero entre 0 y 255 que representa la forma de la onda. Ver mas aqui.

  3. En los otros dos if () prendes los pines 13 (LED interno de Arduino) y otro pin mas el 7 pero luego te olvidas de apagarlo, asi que se quedara prendido para siempre.

const byte led = 10;
char incomingByte = 0;

void setup(){
   Serial.begin(9600);
   pinMode(led, OUTPUT);
}

void loop(){
   if (Serial.available()>0){
      incomingByte = Serial.read();
      if (incomingByte=='a'|| incomingByte=='e' || incomingByte=='i'){
         digitalWrite(led, HIGH);
         delay(100);
         digitalWrite(led, LOW);
      }
      if (incomingByte=='o'){
         digitalWrite(13, HIGH);
         delay(100);
         digitalWrite(13, LOW);
      }
      if (incomingByte=='u'){
         digitalWrite(7, HIGH);
         delay(100);
         digitalWrite(7, LOW);
      }
   }
}