TODOPIC
Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: fernando_realico en 11 de Agosto de 2010, 22:05:41
-
Amigos, les paso el programa : lo que quiero lograr, con un pulsador, supongamos, cuando está activado RB0, salte a selec1, cuando se active RB1 salte a selec2, y así, cuando lo pruebo en el entrenador, con el pulsador RA0 van ensendiendo los led conectados de RB0 a RB5, ahora lo que no logro, producir un salto cuando está rb0 en 1
;PRINCIPAL
principal
movlw b'00000000'
movwf portb
movlw b'11111'
movwf porta
ini
estado1 btfsc portb,0
goto estado2
goto selec1
estado2 btfsc portb,1
goto estado3
goto selec2
estado3 btfsc portb,0
goto estado4
goto selec3
estado4 btfsc portb,0
goto estado5
goto selec4
estado5 btfsc portb,0
goto estado6
goto selec5
estado6 btfsc portb,0
goto estado7
goto selec6
estado7 goto bucle
bucle call retardo
call retardo
btfsc porta,0
goto bucle
incf contador,1
movlw d'7' ; tenía "6"
subwf contador,w ; si es 6 reseteo y vuelvo al bucle, sino voy a etiqueta programas
btfss STATUS,Z
goto programas ;voy a programas
clrf portb
clrf contador
goto ini
programas movf contador,w
addwf PCL,f
goto enciende
goto selec1
goto enciende2
goto enciende3
goto enciende4
goto enciende5
goto enciende6
enciende clrf portb
goto ini
enciende1 clrf portb
bsf portb,0
call retardo
goto ini
enciende2 clrf portb
bsf portb,1
call retardo
goto ini
enciende3 clrf portb
bsf portb,2
call retardo
goto ini
enciende4 clrf portb
bsf portb,3
call retardo
goto ini
enciende5 clrf portb
bsf portb,4
call retardo
goto ini
enciende6 clrf portb
bsf portb,5
call retardo
goto ini
-
el tema es que RB0 lo tienes configurado como salida, es por eso que no te hace caso. Además si los pines los usas como salida, no puedes leerlos como entrada y si lo usas como entrada no puedes usarlos como salidas
-
no lo creo.
el tema es que RB0 lo tienes configurado como salida, es por eso que no te hace caso. Además si los pines los usas como salida, no puedes leerlos como entrada y si lo usas como entrada no puedes usarlos como salidas
Un pin de salida pude ser leido (es un bit= una bandera).
El tema es: adonde salen; select1, select2, etc???
Son etiquetas? subrutinas?
-
Si si, había agarrado para cualquier lado, pensé que se había confundido de pin. Pero es verdad puedes consultar el estado del pin aún siendo una salida.