Tengo este programa para mover un motor en dos sentidos....esta bien en MPLAB, pero por ahi lei que habia algo mal en esto, y era que en lugar de poner clrf PORTB, debia poner clrf TRISB, PARA Que LAS LINEAS SE PUDIERAN CONFIGURAR COMO SALIDA...PERO...CUAL ES EL CORRECTO?
****************************************************************
_CONFIG_CP_OFFand_WDT_OFFand_PWRTE_ONand_XT_OSC
list p =16F84A
INCLUDE<p16f84A.inc>
#define EntradaMarcha PORTA,0 ;interruptor puesta en marcha
#define EntradaSentido PORTA,4 ;interruptor de sentido de giro
ORG 0
inicio
bsf STATUS,RP0
bsf EntradaMarcha ;configura las lineas de entrada
bsf EntradaSentido
clrf PORTB ;Las lineas del puerto configuradas como salida
bcf STATUS,RP0
principal
clrw ; con esta combinacions e detiene el motor
btfsc EntradaMarcha ;comprueba el estado del interruptor funcionamiento
goto ActivaSalida
movlw b'00010010' ;Gira en un sentido
btfsc EntradaSentido ;Comprueba el sentido de giro deseado
movlw b'00010001' ;Gira en el otro sentido
ActivaSalida
movwf PORTB
goto principal
END
list p =16F84A
INCLUDE<p16f84A.inc>
#define EntradaMarcha PORTA,0 ;interruptor puesta en marcha
#define EntradaSentido PORTA,4 ;interruptor de sentido de giro
ORG 0
inicio
bsf STATUS,RP0
bsf EntradaMarcha ;configura las lineas de entrada
bsf EntradaSentido
clrf PORTB ;Las lineas del puerto configuradas como salida
bcf STATUS,RP0
principal
clrw ; con esta combinacions e detiene el motor
btfsc EntradaMarcha ;comprueba el estado del interruptor funcionamiento
goto ActivaSalida
movlw b'00010010' ;Gira en un sentido
btfsc EntradaSentido ;Comprueba el sentido de giro deseado
movlw b'00010001' ;Gira en el otro sentido
ActivaSalida
movwf PORTB
goto principal
END
****************************************************************
_CONFIG_CP_OFFand_WDT_OFFand_PWRTE_ONand_XT_OSC
list p =16F84A
INCLUDE<p16f84A.inc>
#define EntradaMarcha PORTA,0 ;interruptor puesta en marcha
#define EntradaSentido PORTA,4 ;interruptor de sentido de giro
ORG 0
inicio
bsf STATUS,RP0
bsf EntradaMarcha ;configura las lineas de entrada
bsf EntradaSentido
clrf PORTB ;Las lineas del puerto configuradas como salida
bcf STATUS,RP0
principal
clrw ; con esta combinacions e detiene el motor
btfsc EntradaMarcha ;comprueba el estado del interruptor funcionamiento
goto ActivaSalida
movlw b'00010010' ;Gira en un sentido
btfsc EntradaSentido ;Comprueba el sentido de giro deseado
movlw b'00010001' ;Gira en el otro sentido
ActivaSalida
movwf PORTB
goto principal
END
list p =16F84A
INCLUDE<p16f84A.inc>
#define EntradaMarcha PORTA,0 ;interruptor puesta en marcha
#define EntradaSentido PORTA,4 ;interruptor de sentido de giro
ORG 0
inicio
bsf STATUS,RP0
bsf EntradaMarcha ;configura las lineas de entrada
bsf EntradaSentido
clrf PORTB ;Las lineas del puerto configuradas como salida
bcf STATUS,RP0
principal
clrw ; con esta combinacions e detiene el motor
btfsc EntradaMarcha ;comprueba el estado del interruptor funcionamiento
goto ActivaSalida
movlw b'00010010' ;Gira en un sentido
btfsc EntradaSentido ;Comprueba el sentido de giro deseado
movlw b'00010001' ;Gira en el otro sentido
ActivaSalida
movwf PORTB
goto principal
END
Última edición por un moderador: