Hola,estoy empezando a programar con el pic simulador.
Soy aficionado al modelismo ferroviario y necesito mover dos servos para mover un desvío triple (tres salidas centro-izquierda-derecha).
He pensado en moverlos con un pulsador siguiendo una secuencia.Partiendo de una posición inicial centro que el desvío cambie a izquierda-centro-derecha-centro y vuelta a empezar,según se vaya pulsando el botón.
De momento he conseguido encender los leds (simulando que son los servos) con el pulsador,he utilizado el simulador.El código que estoy usando es el siguiente:
AllDigital
TRISA = %00000001
TRISB = %00000000
Dim estado As Byte
loop:
If PORTA.0 Then Goto izquierda
Goto loop
izquierda:
PORTB.0 = 1
WaitMs 1
PORTB.0 = 0
estado = 1
While estado = 1
If PORTA.0 Then estado = 0
Wend
Goto centro
centro:
PORTB.1 = 1
WaitMs 1
PORTB.1 = 0
estado = 1
While estado = 1
If PORTA.0 Then estado = 0
Wend
Goto derecha
derecha:
PORTB.2 = 1
WaitMs 1
PORTB.2 = 0
estado = 1
While estado = 1
If PORTA.0 Then estado = 0
Wend
Goto centro1
centro1:
PORTB.3 = 1
WaitMs 1
PORTB.3 = 0
estado = 1
While estado = 1
If PORTA.0 Then estado = 0
Wend
Goto izquierda
supongo que habrá alguna manera más elegante de hacerlo,pero mis conocimientos,de momento,no dan "pa más".
Si alguien quiere depurarlo un poco,pues estupendo.
Tengo unas dudas.
-Tengo el pin 0 del puerto A como entrada,pero además en el "microntroller view" tengo el pin 5 de la puerta A también como entrada y no creo que en el programa yo lo tenga así ¿En qué me equivoco?
-¿Hay algún simulador para ver el movimiento del servo con el pic simulator? He visto que para un motor paso a paso sí lo tengo, pero no he encontrado nada para un servo.
-Si no existe simulador en el ide ¿Se puede simular con proteus?.Sé que pbp se puede simular,supongo que con ide será igual
-¿cómo se cargan los módulos externos?.He bajado los de la página del programa pero no sé lo que pregunta cuando los quieres cargar.No sé si es la ruta a un fichero o un tipo determinado de fichero.
Bueno voy a empezar a mirar los ejemplos que hay en el foro para mover los servos.Me parece un poco más complicado que en pbp.Ya os iré comentando.
Muchas gracias