Wenas,Ante todo agradecer la ayuda de este foro,gracias a el estoy aprendiendo un monton.

Estoy usando un pic 16f628 4Mhz,servo futaba S3003
En algunos ejemplos se utiliza la declaracion "pulsout",en el pic simulator ide no me la reconococe,por lo que uso "servoout"
En el siguiente ejemplo consigo que el servo gire un poco:
Define CONF_WORD = 0x3f10
WaitMs 1000
TRISB = %00000000
PORTB.3 = 0
ServoOut PORTB.3, 30
En este otro ejemplo consigo que gire un poco,continuamente hacia un lado y hacia el otro:
Define CONF_WORD = 0x3f10
WaitMs 1000
TRISB = %00000000
PORTB.3 = 0
loop:
ServoOut PORTB.3, 30
waitms 500
ServoOut PORTB.3,240
waitms 500
goto loop
Así pues intento crear un bucle con la intencion de que el servo recorra los 180º en su totalidad:
Define CONF_WORD = 0x3f10
WaitMs 1000
TRISB = %00000000
PORTB.3 = 0
Dim a As Byte
a = 0
loop:
ServoOut PORTB.3, 30
a = a + 1
WaitMs 20
If a = 4 Then Goto fin
Goto loop
fin:
En cambio,hace el mismo pequeño recorrido que en los casos anteriores. He realizado algunas otras pruebas con resultados similares.
No termino de entender como se puede dominar el giro del servo,para que efectue el recorrido con los grados deseados.
Gracias,un saludo.