Problema no serial monitor

Fiz um programinha simples para movimentar o servo onde ele deveria ler o angulo colocado no serial monitor e movimentar o servo porem quando coloco por exemplo 12 ele entende 1 e 2 , colocando 130 ele entende 1 , 3 e 0 , alguém sabe me dizer como resolver isso ?

mostra seu código, isto pode depender do tipo de variavel que usou...(acho eu)...

Segue codigo

#include <Servo.h>
int pos;
Servo servo;
void setup ()

{
  Serial.begin(9600);
  servo.attach(10);
  servo.write(0);
}

void loop()
{
  pos=Serial.read();

  if ( pos != -1 ){
   servo.write(pos);
   delay(1000);}
}