[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [avr-gcc-list] jump_to_null question
From: |
Eric Weddington |
Subject: |
RE: [avr-gcc-list] jump_to_null question |
Date: |
Thu, 24 May 2007 09:52:11 -0600 |
> -----Original Message-----
> From:
> address@hidden
> [mailto:address@hidden
> org] On Behalf Of Juergen Harms
> Sent: Thursday, May 24, 2007 8:19 AM
> To: address@hidden
> Subject: Re: [avr-gcc-list] jump_to_null question
>
> > The best way to reset is to enable the watchdog timer on
> the shortest
> > time-out, go into an infinite loop, and let the watchdog reset the
> > AVR. Depending on which AVR you are using, you will have
> to turn off
> > the watchdog timer after reset, with code in the .init3
> section, for
> > example.
>
> Interesting. I use a system-disaster procedure for impossible cases
> which I want to be able to resconstruct - it saves some
> information in
> eeprom and does __init () - which is where the reset vector ends up.
> Nice hint, that needs to be corrected. Reading the code of
> __init I now
> realise that __init is only a prolog for launching the
> compiled program.
> Even for a software disaster handler, the watchdog reset is certainly
> preferable, I assume it will clean pending interrupts, reset hardware
> counters, etc. A candidate for the FAQ's (How do I hard-reset
> my system?) ?
Yes, it resets all the registers to their default state.
You're right, it should be in the FAQ. I'll put that on my list.
Thanks,
Eric Weddington
Re: [avr-gcc-list] jump_to_null question, Rolf Magnus, 2007/05/26