TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: WORBVU en 24 de Abril de 2005, 08:11:00

Título: Io_Oi ¿¿¿ RESET DE UN PIC POR SOFTWARE ???
Publicado por: WORBVU en 24 de Abril de 2005, 08:11:00
Si quiero en un momento dado hacerle un reset a un PIC16F877A por software con un goto 0x00 (vector de reset) que pasa con el STACK (la pila) si este llamado se hace dentro de una rutina CALL?. Hay alguna forma de borrar el STACK (la pila)?
Les agradezco toda la ayuda que me puedan brindar
Título: RE: Io_Oi ¿¿¿ RESET DE UN PIC POR SOFTWARE ???
Publicado por: antoniof en 24 de Abril de 2005, 17:34:00
Pues no.

La pila la gestiona internamente el PIC y no es accesible. Si saltas al inicio (o a otro lugar) desde una subrrutina sin el uso de retfie o retlw, la pila se desbordará irremediablemente.

Lo que puedes hacer es lo siguiente:

  call  subrrutina;Llamas a la subrrutina que sea, y sales de ella con un retfie
  goto 0x00; Saltas desde aqui al inicio.
 
Título: RE: Io_Oi ¿¿¿ RESET DE UN PIC POR SOFTWARE ???
Publicado por: tuerK en 18 de Julio de 2005, 08:35:00
Hola,
 a mi me parece buena idea, pero quizá para evitar anidamiantos llamaria a una subrutina y crearia un bucle infinito (con el WDT activado) así será el propio pic el que resetea, gestiona la pila y todo lo necesario.

Un saludo desde Barcelona.
Título: RE: Io_Oi ¿¿¿ RESET DE UN PIC POR SOFTWARE ???
Publicado por: RaDoN en 18 de Julio de 2005, 09:15:00
Muy buena idea Sonrisa Gigante Es una forma de asegurarse que el pic no ara el tonto por motivos de la pila.