I belive that you solved this by now, but still:
The type returned by Serial.read() is an int which is an decimal equivalent of a character - character '1' is 49. You must thus convert that int to a char to check the condition like that:
int led = 13 ;
char charRead;
void setup() {
Serial.begin(9600);
pinMode(led, OUTPUT);
}
void loop() {
if(Serial.available()>0) {
delay(100);
while(Serial.available()>0){
charRead = char(Serial.read());
if(charRead=='1'){
digitalWrite(led,1);
}
}
}
delay(1000);
}
You could also just check the int if you do not want to convert to a char
int intRead = Serial.read();
if(intRead==49){...}