Autor Tema: error en log simulacion proteus  (Leído 4032 veces)

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

Desconectado bigwill45

  • PIC10
  • *
  • Mensajes: 15
error en log simulacion proteus
« en: 18 de Febrero de 2008, 17:40:44 »
hola lista
me sucede lo siguiente
estoy trabajando con un 16f84a sobre proteus , comunicacion serie con max232 cuando mando a leer datos provenientes del computador el pic se queda esperando a que lleguen los datos

rs232_EsperaBitStart
      btfsc         rs232_in         ; lee la entrada y espera que sea 0
      goto         rs232_EsperaBitStart

cdo simulo corre bien ,pero en el simulation log me aparece el siguiente mensaje

(PIC 16 Core) PC=0x0001 Stack overflow executing CAll instruccion


el mensaje no sale como error ,sino como alerta, lo que me preocupa es , si cdo se grabe el pic esto pudiera traer algun problema

Saludos
Willy
 :(


Desconectado poseidon20

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 762
Re: error en log simulacion proteus
« Respuesta #1 en: 18 de Febrero de 2008, 22:29:17 »
el mensaje no puede ser mas claro, te esta diciendo que superastes la pila del pic, este tiene 8 niveles, en alguna parte debes estar llamando rutinas sucesivamente sin salir de esos call, entonces el pic generara un reset por desbordamiento de la pila. Deberias ver en que parte del programa esta sucediendo eso, ya que eso genera un funcionamiento erroneo del mismo.

Desconectado bigwill45

  • PIC10
  • *
  • Mensajes: 15
Re: error en log simulacion proteus
« Respuesta #2 en: 19 de Febrero de 2008, 13:54:14 »
muchas gracias por responder
lo sorprendente es que el proteus lo sigue simulando y el mensaje lo da como una alerta , no con icono de error.

tengo en el puerto b rb6 y rb7 con optoacopladores y en el puerto a ra3 y ra4 para la comunicacion con un max232
sucede que desde el computador pretendo enviar una señal ( un cero) pa activar rb6 y un (1) pa activar rb7 entonces tengo un call y con un btsf dejo al pic esperando el bit de star para leer el dato , no se si sera mejor esto o usar la interrupcion rb0 , claro de usarla, tendria que usar esa misma linea para el mx232?
me aclaran por favor ?
gracias
willy

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: error en log simulacion proteus
« Respuesta #3 en: 19 de Febrero de 2008, 14:18:56 »
muchas gracias por responder
lo sorprendente es que el proteus lo sigue simulando y el mensaje lo da como una alerta , no con icono de error.

No. No es sorprendente, porque no es un error!. Podés adrede overflodear el STACK para forzar un reset. A veces se hace de manera consciente. Especialmente en las familias de PICs viejas en las que no es posible realizar un reset mediante una instrucción específica destinada a ello.

tengo en el puerto b rb6 y rb7 con optoacopladores y en el puerto a ra3 y ra4 para la comunicacion con un max232
sucede que desde el computador pretendo enviar una señal ( un cero) pa activar rb6 y un (1) pa activar rb7 entonces tengo un call y con un btsf dejo al pic esperando el bit de star para leer el dato , no se si sera mejor esto o usar la interrupcion rb0 , claro de usarla, tendria que usar esa misma linea para el mx232?
me aclaran por favor ?
gracias
willy


¿En la mísma línea? :S

Aliméntanos. Danos código! y te podremos ayudar más fácilmente.

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 bigwill45

  • PIC10
  • *
  • Mensajes: 15
Re: error en log simulacion proteus
« Respuesta #4 en: 19 de Febrero de 2008, 15:16:17 »
ahi te mando el proyecto, esta en proteus.
lo que quiero lograr es que al mandar un valor x, activar rb6 y cdo se mando otro valor activar rb7
desde el pc al pic
salu2
willy

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: error en log simulacion proteus
« Respuesta #5 en: 19 de Febrero de 2008, 15:35:43 »
La instrucción END debe ir al final de todo el código. El MPASM no ensambla todo lo que haya después del END. He allí tu problema.

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 bigwill45

  • PIC10
  • *
  • Mensajes: 15
Re: error en log simulacion proteus
« Respuesta #6 en: 19 de Febrero de 2008, 16:27:21 »
es decir, que como esta todo , lo probaste y listo ? solo el end?
de verdad ?
lo pruebo y ahora te comento
muchas gracias colega
salu2
willy

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: error en log simulacion proteus
« Respuesta #7 en: 19 de Febrero de 2008, 16:33:18 »
No. Pero ese era principalmente tu problema. Cuando pases el END debajo, va a ensamblar todo el codigo y vas a tener que arreglar un par de errores que tenìas.

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 bigwill45

  • PIC10
  • *
  • Mensajes: 15
Re: error en log simulacion proteus
« Respuesta #8 en: 19 de Febrero de 2008, 16:44:17 »
sii ya estuve mirando algunas cosas que tenia, algunas variables mal escritas  y demas
sigo trabajando y te cuento como quedo
muchisimas gracias
le cuento los resultados finales

Desconectado bigwill45

  • PIC10
  • *
  • Mensajes: 15
Re: error en log simulacion proteus
« Respuesta #9 en: 19 de Febrero de 2008, 17:37:06 »
yo por aca de nuevo,  ya esta funcionando bien , adjunto el proyecto para que lo veas funcionado
tengo una duda a la entrada del max232 puse un virtual terminal y otro a la salida del max232 para ver que es lo que le esta llegando al pic, y bueno si en el v. terminal , pongo un 1 llega un f y cosas asi, por fis miralo y denme una opinion sobre que pudiera ser
salu2
willy

Desconectado poseidon20

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 762
Re: error en log simulacion proteus
« Respuesta #10 en: 20 de Febrero de 2008, 01:19:12 »
BrunoF, sabia de que el overflowear la pila producia un reset, pero tengo una duda tonta, este reset que se produce, es como hacer un reset con el MCLR, y todas las variables se ponen a 0,???, si es asi me caeria a pelos para una aplicacion que estoy haciendo y necesito hacer un reset por software

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: error en log simulacion proteus
« Respuesta #11 en: 20 de Febrero de 2008, 01:45:42 »
Jaja. Mirá, estoy 99% seguro de que no. Todo debería quedar tal cual estaba antes del over/underflow.

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 poseidon20

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 762
Re: error en log simulacion proteus
« Respuesta #12 en: 20 de Febrero de 2008, 02:08:55 »
es decir que el PC apuntaria a la posicion 0 de la memoria de programa, es decir al inicio de todo, entonces la solucion seria que al comenzar mi programa haga clrf   varibles, asi me aseguro de que comienzen con 0, estoy en lo correcto?

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: error en log simulacion proteus
« Respuesta #13 en: 20 de Febrero de 2008, 02:24:23 »
Sip. Hace un algoritmo que limpie toda la RAM. No es dificil utilizando el Indirect File Addressing.

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 poseidon20

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 762
Re: error en log simulacion proteus
« Respuesta #14 en: 20 de Febrero de 2008, 02:27:22 »
ok, muchas gracias. Pondre en practica lo que acabo de aprender :D


 

anything