Autor Tema: PCLATH e instruccion goto...  (Leído 1931 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Golden_Eagle

  • PIC16
  • ***
  • Mensajes: 135
PCLATH e instruccion goto...
« 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 loco

Desconectado jesus_sat

  • PIC10
  • *
  • Mensajes: 7
RE: PCLATH e instruccion goto...
« Respuesta #1 en: 25 de Enero de 2005, 08:11:00 »
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 accederSonrisa

Desconectado jesus_sat

  • PIC10
  • *
  • Mensajes: 7
RE: PCLATH e instruccion goto...
« Respuesta #2 en: 25 de Enero de 2005, 08:13:00 »
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 accederSonrisa