Autor Tema: Ayuda con error . "Crossing page boundary -- ensure page bits are set"  (Leído 5676 veces)

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

Desconectado bones18

  • PIC12
  • **
  • Mensajes: 54
Wuenas..

estoy haciendo un programa con un 16f876,  el programa ocupa cerca de 3000 lineas, y gran parte del trabajo se hace cada vez que recibo un caracter por el puerto serie.

Iva programando tan felizmente hasta que de golpe, el chip dejaba de hacer lo que tocaba y se volvia medio loco(LEds que se encienden solos rollo poltergeist).  Me ha dado cuenta que paso al ir añadiendo lineas, mi programa funciona, pero al añadirle un linea más de codigo no importa donde, éste deja de funcionar y en el MPLAB pasa a darme este mensaje

Message[306] C:\PIC16F876-XARXA\GPS_LCD_BASIC8.ASM 2736 : Crossing page boundary -- ensure page bits are set.

nose que significa, dudo que se me haya acabado la memoria de codigo pues tengo 8k, y si la mayoria de instrucciones necesitan solo un byte, 3000 lineas tampoco son tantas.

alguna idea?

gracias!

Desconectado bones18

  • PIC12
  • **
  • Mensajes: 54
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #1 en: 16 de Noviembre de 2006, 12:35:57 »
leo q es problema de paginas....

pero tengo dudas sobre lo que hay que hacer.

Desconectado Azicuetano

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1020
    • Aplicaciones Electrónicas en Alicante.
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #2 en: 16 de Noviembre de 2006, 14:15:47 »
Hola bones!

Le puedes pegar un vistazo a esto a ver si te sirve de algo:

http://www.todopic.com.ar/foros/index.php?topic=8533.msg54160#msg54160



Un saludo desde Alicante.

Desconectado bones18

  • PIC12
  • **
  • Mensajes: 54
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #3 en: 17 de Noviembre de 2006, 05:53:32 »
WUENAS....

estoy rompiendome la cabeza con este problema.

segun el datasheet es tan facil como

ORG 0

bcf PCLATH,4
bsf PCLATH,3
call sub1_p

.

.
.


ORG 0x900

sub1_p
.
.
.
return


es decir, si quiero passar de una pagina a otra sólo he de tocar el PCLATH y ya tendria que saltar a la siguiente página, el problema es que no lo hace.
Alguien seria tan amable de probar este codigo, y  mirar si compila bien, ojo en el compilador sale el mensajito verde donde dice que ha compilado bien, pero si nos leemos los warnings sale uno alli donde haya el salta hacia la siguiente pagina.
Message[306] C:\PIC16F876-XARXA\ENCENDRE_LEDS_PROBA.ASM 82 : Crossing page boundary -- ensure page bits are set
A lo mejor es cosa de mi version de MPLAB v7.43.

gracias!

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #4 en: 17 de Noviembre de 2006, 06:00:06 »
Hola bones.
El problema surge ya que si bien el 16F877A posee 8K, estos estan divididos entre cuatro paginas. Es decir que cada pagina posee 2K (2048 words(lineas)).
Cuando excedes esta capacidad de lineas, debes asegurarte que los bits del PCLATH esten correctamente seteados segun a donde vaya o retorne el codigo.

   ORG 0
Hola
   PAGESELW   aja
   movwf   PCLATH
   call aja
   nop
   nop

   ORG 0x900

aja
   return

Saludos.
« Última modificación: 17 de Noviembre de 2006, 06:01:40 por BrunoF »
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado bones18

  • PIC12
  • **
  • Mensajes: 54
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #5 en: 17 de Noviembre de 2006, 06:19:52 »
si creo que yata arreglado, el problema es que creia q el warning habia de desaparecer del log de compilación, y ahora acabo de ver que aunque salga el micro ya funciona correctamente.

gracias!

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #6 en: 17 de Noviembre de 2006, 06:23:50 »
Hola bones. Si. el ensamblador arroja Messages y Warnings muchas veces, simplemente para indicar o alertar al usuario programador sobre ciertos posibles errores y cosas a tener en cuenta.
Si deseas, puedes suprimir los mensajes y advertencias.
Por ejemplo podrias hacer esto:

   ERRORLEVEL   -306 ;Suprimir advertencia de seleccion de pagina

  ORG 0
Hola
   PAGESELW   aja
   movwf   PCLATH
   call aja
   nop
   nop

   ERRORLEVEL   +306 ;Restaurar advertencia de seleccion de pagina(evitemos errores, ¿eh? :D)


   ORG 0x900

aja
   return


Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado bones18

  • PIC12
  • **
  • Mensajes: 54
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #7 en: 20 de Noviembre de 2006, 10:17:21 »
ok gracias

Desconectado ESTECA55

  • PIC24H
  • ******
  • Mensajes: 1404
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #8 en: 20 de Noviembre de 2006, 17:18:35 »
BrunoF muy buena la info, no conocia el comando: 

PAGESELW   aja

Yo antes para hacer un cambio de pag, para setear el PCLATH me fijaba en la pag que estava la subrrutina a llamar y lo escribia, (que macaco jeje) esto es mas comodo ya que te permite cambiar de lugar las subrrutinas sin tener que cambiar el codigo donde fueron llamadas

Gracias
Hay que esforzarse por ser el mejor, no creerse el mejor

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #9 en: 20 de Noviembre de 2006, 18:45:01 »
Hola esteca55.
Precisamente para eso que acabas de mencionar existe la funcion PAGESELW. Es un detalle que nos quita un dolor de cabeza a la hora de modificar codigo existente.

Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado Resistencio

  • PIC12
  • **
  • Mensajes: 82
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #10 en: 12 de Septiembre de 2007, 02:53:15 »
Las ensaye todas, para solucionar lo del cambio de pagina...pero no me anda ninguna de las opciones...Las mas tentadora y facil es esta que explica BRUNO, pero no me anda...PAGESELW !!!

estoy haciendo esto desde pag 0

PAGESELW   STOPF
MOVWF   PCLATH
CALL   STOPF

luego en pag 1

org 0x800
STOPF  "ALGO POR ACA"
RETURN

No hay caso, no funciona...por lo que vengo leyendo hace unas horas, es muy comun este problema...NO ASI LA SOLUCION !!!

Creo que ademas de la pag1, viene con el PCLATH apuntado a pag1...habra que cambiarlo otra vez a pag0...XXDDDDD !!!

Seguire mañan con la cabeza mas fresca !!!

SALUDOS !!!

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #11 en: 12 de Septiembre de 2007, 13:15:57 »
Hola Resistencio.

Acabo de simular el codigo que expusiste en el MPLAB y anda perfecto...

Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado Resistencio

  • PIC12
  • **
  • Mensajes: 82
Re: Ayuda con error . "Crossing page boundary -- ensure page bits are set"
« Respuesta #12 en: 16 de Septiembre de 2007, 13:29:46 »
"Que lo pan con queso"...lo voy a revisar otra vez !!!  :-)

Gracias BRUNO....

Parece que BRUNO es como el sol (aunque no lo veamos, siempre esta  :D)

______________________________
"Justo a mi me toco ser YO" QUINO