Hola.
Estoy desarrollando un programa en un PIC18F26J50 con MPLAB 8.83 y MPASMWIN 5.43 y al compilar me sale el error 171: La dirección especificada no está en el rango de la Access RAM [0x60,0xFF].
Este error me sale para todas las instrucciones en las que trato de acceder a las variables de mi programa, que las tengo definidas así:
CBLOCK 0x004
Ejemplo1
Ejemplo2
Ejemplo3
ENDC
Y las instrucciones que me dan el error son de este tipo:
MOVF Ejemplo1,W,ACCESS
Según el datasheet del micro (familia PIC18F46J50) la Access RAM está formada por los 96 primeros bytes del banco 0 (o sea, desde 0x00 hasta 0x59) y los 160 últimos del banco 15 (o sea, desde 0x60 hasta 0xFF) siendo los primeros de propósito general (GPRs) y los últimos, registros de funciones especiales (SFRs).
Parece que el MPASM no me está permitiendo acceder a la Access RAM si la dirección es inferior a 0X60. No hay ningún problema si, por ejemplo, trato de acceder a los registros especiales (que están hacia arriba a partir de esa dirección).
¿Alguien sabe decirme qué estoy haciendo mal, o qué he entendido mal del datasheet? ¿Hay alguna directiva en el MPASM u opción en el MPLAB que me pueda estar bloqueando este acceso?
Muchas gracias.
Estoy desarrollando un programa en un PIC18F26J50 con MPLAB 8.83 y MPASMWIN 5.43 y al compilar me sale el error 171: La dirección especificada no está en el rango de la Access RAM [0x60,0xFF].
Este error me sale para todas las instrucciones en las que trato de acceder a las variables de mi programa, que las tengo definidas así:
CBLOCK 0x004
Ejemplo1
Ejemplo2
Ejemplo3
ENDC
Y las instrucciones que me dan el error son de este tipo:
MOVF Ejemplo1,W,ACCESS
Según el datasheet del micro (familia PIC18F46J50) la Access RAM está formada por los 96 primeros bytes del banco 0 (o sea, desde 0x00 hasta 0x59) y los 160 últimos del banco 15 (o sea, desde 0x60 hasta 0xFF) siendo los primeros de propósito general (GPRs) y los últimos, registros de funciones especiales (SFRs).
Parece que el MPASM no me está permitiendo acceder a la Access RAM si la dirección es inferior a 0X60. No hay ningún problema si, por ejemplo, trato de acceder a los registros especiales (que están hacia arriba a partir de esa dirección).
¿Alguien sabe decirme qué estoy haciendo mal, o qué he entendido mal del datasheet? ¿Hay alguna directiva en el MPASM u opción en el MPLAB que me pueda estar bloqueando este acceso?
Muchas gracias.