Código: ASM
MOVLW PORTA,70H
MOVLW toma un solo valor, por lo tanto el "PORTA," esta por demas. Lo que hace esta instrucciones es cargar a W con un valor para luego usarlo con otra instruccion.
Lo vas a tener reemplazar por un MOVLW 0x70 y un MOVWF PORTACódigo: ASM
BTFSC PORTA,80H BSF PORTB,08H
el BTFSC es para testear el bit, y toma valores de 0 a 7, vos tenes un 0x80, imagino que intentaste poner PORTA,7
el BSF ocurre lo mismo, necesitas si o si un numero del 0 al 7, BSF PORTB,4Código: ASM
ADDWF PORTA,07H,W SUBWF PORTA,07H,W
ADDWF como su nombre lo indica es ADD ( sumar ) W con F (registro). Posee 2 parametros, SUBWF tambien. El primero es que registro vas a sumar (junto con W) y luego donde va a ir el resultado.
Si quieres sumarle a PORTA el valor 0x07, primero cargas el registro W con 0x7 y luego sumas. De alli lo pones en W o en PORTA ( F ) Ejemplo:Código: ASM
MOVLW 0x7 ADDWF PORTA, W ; Esto suma el valor del PORTA + 0x7 y el resultado lo pone en W. MOVLW 0x1 SUBWF PORTA, F ; En PORTA, vas a tener el resultado de PORTA - W
Otro que posee errorCódigo: ASM
MOVWF PORTB,07H
el MOVWF simplemente pasa lo que tengas en W al registro que pongas, por lo cual tiene un solo parametro y no 2 como pusiste.
seria MOVWF PORTB solamente.
Te agradezco muchísimo, KILLERJC, me has sido de muchísima ayuda, y aprendí cosas nuevas con tu aportación.
Gracias por tu tiempo, ¡Eres grande!
Sigue así, saludos.