TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: Golden_Eagle en 16 de Enero de 2005, 12:33:00
-
Asi de sencillo, pongo esas 3 lineas de codigo para un 16f877 y en lugar de saltar a la posicion 1F34h, salta 63h posiciones mas arriba, y me pasa con cualquier direccion q ponga.

Sera un bug del mp lab?? lo curioso es q hasta hoy funcionaba bien, no se q paso
-
hola, bueno yo no saltaria de esa forma, lo que te recomiendo es lo siguiente:
como tu quieres acceder a las direccion 1F34h, entonces puedes hacer:
movlw 0x1f
movwf PCLATH
goto 0x34
tu sabes que el PCL esta formado por los 8 bits que vienen de la instruccion de salto y 5 bits que vienen de PCLATH, entonces al escribir sobre los 5 bits de menor peso del PCLATH ya estas modificando la parte alta del PCL, pero ten en cuenta que solo se escriben cundo tu realizas la funcion de salto, en otras palabras tu puedes escribir lo que sea en la parte alta del PCL pero realmente no se escriben hasta que tu uses cualquier instruccion de salto, es ahi cuando recien se combinan para formar la direccion a la que deseas acceder
-
hola, bueno yo no saltaria de esa forma, lo que te recomiendo es lo siguiente:
como tu quieres acceder a las direccion 1F34h, entonces puedes hacer:
movlw 0x1f
movwf PCLATH
goto 0x34
tu sabes que el PCL esta formado por los 8 bits que vienen de la instruccion de salto y 5 bits que vienen de PCLATH, entonces al escribir sobre los 5 bits de menor peso del PCLATH ya estas modificando la parte alta del PCL, pero ten en cuenta que solo se escriben cundo tu realizas la funcion de salto, en otras palabras tu puedes escribir lo que sea en la parte alta del PCL pero realmente no se escriben hasta que tu uses cualquier instruccion de salto, es ahi cuando recien se combinan para formar la direccion a la que deseas acceder