Autor Tema: como resetear el micro ?  (Leído 4281 veces)

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

Desconectado pic27

  • PIC10
  • *
  • Mensajes: 42
como resetear el micro ?
« en: 03 de Noviembre de 2005, 08:07:00 »

He conseguido poner en marcha un boot loader , se activa cuando el micro se inicia.

Quisiera saber como puedo reiniciar por programa el micro ATmega128 para que con esta indicación , se reinicie y cargue el boot por lo tanto el nuevo soft.

esta claro que haciendo un reset por hard o quitando la alimentación sería posible,pero en este caso puede que no este a mano.


La activación del boot retrasa algunos segundos el arranque del equipo por lo que he pensado(quiza sea una barbaridad) modificar a mi gusto el fuse BOOTRST, es decir, colocar a 0 ó 1, me imagino que será tan solo en asm y no he sido capaz de hacerlo mirando incluso los ejemplos de algunos colegas en pic sería algo así com bootrst.1=0 .

sin más un saludo.




Sin, un saludo.Flash

Desconectado MRET

  • PIC10
  • *
  • Mensajes: 5
RE: como resetear el micro ?
« Respuesta #1 en: 23 de Diciembre de 2005, 14:27:00 »
hola colega mira no soy un super experto pero en mi poca experoencia en la pata 20 den micro obio se encuentra el reset mira yo lo que hice es ponerle a mi dongle o programador un boton de precion de tierra a el reset y el micro reinicializa el programa cargado.
espero que te sirva mi tip
saludos soy nuevo aquiRebotado

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
RE: como resetear el micro ?
« Respuesta #2 en: 23 de Diciembre de 2005, 15:35:00 »
El reset por hardware que él menciona es como el que recomiendas MRET. El lo que necesita es resetear el micro desde software. Divertido

Desconectado MRET

  • PIC10
  • *
  • Mensajes: 5
RE: como resetear el micro ?
« Respuesta #3 en: 28 de Diciembre de 2005, 13:51:00 »
a por software pues creo que desde su software que usa ya sea icc, o codevision, o winavr todos ellos al programar el micro automaticamente envian un reset al micro para que corra el nuvo programa, pero si lo quiere resetear solamente para que reinicie su programa cargado en el icc hay una utileria que dice verificar flash o eeprom y cuando las verifica solo reseta, seria un manera facil de hacerlo, pero si su software no es un programador de micros, la manera mas vial seria programar un bit a la salida de su puerto que use para que mande un 1 o 0 al reset y lo reinicie esa segun mis locuras sera un forma no creen?Avergonzado

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
RE: como resetear el micro ?
« Respuesta #4 en: 29 de Diciembre de 2005, 15:33:00 »
jaja no lo había pensado de esa forma Muchas risas

Desconectado Bruno_AR

  • PIC12
  • **
  • Mensajes: 89
RE: como resetear el micro ?
« Respuesta #5 en: 20 de Febrero de 2006, 13:42:00 »
Lo que tenes que hacer es muy facil, yo trabajo con el 89C51CC01 pero el concepto es exactamente el mismo, fijate en la hoja de datos que seguramente el micro que vos utilizas tiene watchdog, el WD es un timer programable como cualquier otro pero tiene como particularidad que al momento de overflow si fue configurado resetea la CPU. Si vos en tu programa configuras y habilitas el WD, y tenes un loop lo tenes que resetear de vez en cuando, por ej:

void ResetWD ()
{
   //sentencias que resetean el WD de tu micro
}

while (1)
{
     // tu codigo
    .......
    .......
 
    ResetWD();

}

de esta manera si vos queres que tu CPU se resetee por soft deberias "clavar" el programa de esta forma:

while (1);

al hacer esto el WD no vuelve a resetearse y por lo tanto llega a overflow, por concecuencia reset del CPU.

Si no fui claro con la explicacion mandame un mail a zappia_andres@hotmail.com porque estoy en el laburo y no tengo mucho tiempo :) espero te sirva igual
Un saludo, desde Argentina


 

anything