Bueno viendo el funcionamiento de programa he decidido dejar el asm como esta lo unico k he visto es la necesidad de un secuenciador manual que pase de RB0 a RB7 de uno en uno cuando a la entradade PORTA sea = a 0x01
pero tengo un error en el ASM por k al montarlo en el entrenador no se mantiene quieto en la ultima posicion de RBx donde anteriormente estaba,
list p=16f84
include "p16f84.inc"
org 0x00
INICIO bsf STATUS,RP0
clrf TRISB
movlw b"00001111"
movwf TRISA
bcf STATUS,RP0
caso1 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
goto caso1
caso12 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
GOTO On1
GOTO caso12
On1 BSF PORTB,0
BCF PORTB,7
;En caso1 si en la entrada tenemos0x01 pasa a caso12 y si caso12 ya no esta porta en 0x01 entonces pone a onRB0 y off RB7 (asi hasta k no suelte el pulsador no enciende RB0 Y APAGA RB7) Pero lo k no se hacer es que haga este ciclo hasta k se cumpla y cuando lo cumpla pase al siguiente y haga lo mismo k el caso anterior pero con la siguiente salida RB.
caso2 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
goto caso2
caso22 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
GOTO On2
GOTO caso22
On2 BSF PORTB,1
BCF PORTB,0
caso3 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
goto caso3
caso32 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
GOTO On3
GOTO caso32
On3 BSF PORTB,2
BCF PORTB,1
caso4 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
goto caso4
caso42 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
GOTO On4
GOTO caso42
On4 BSF PORTB,3
BCF PORTB,2
caso5 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
goto caso5
caso52 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
GOTO On5
GOTO caso52
On5 BSF PORTB,4
BCF PORTB,3
caso6 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
goto caso6
caso62 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
GOTO On6
GOTO caso62
On6 BSF PORTB,5
BCF PORTB,4
caso7 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
goto caso7
caso72 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
GOTO On7
GOTO caso72
On7 BSF PORTB,6
BCF PORTB,5
caso8 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
goto caso8
caso82 movfw PORTA
XORLW 0x01
BTFSS STATUS,Z
GOTO On8
GOTO caso82
On8 BSF PORTB,7
BCF PORTB,6
goto caso1
end
¿Que instruccion hay para hacer eso?
Saludos Jachy