[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [avr-libc-dev] Problem writing to flash - atmega644
From: |
Markus Lampert |
Subject: |
Re: [avr-libc-dev] Problem writing to flash - atmega644 |
Date: |
Thu, 23 Aug 2007 15:00:51 -0700 (PDT) |
> And once again, if I leave this routine in the .text section, the
> unexpected resets suddenly disappear.
That would exactly be the behaviour if you have an interrupt enabled as Joerg
mentioned. The ATmega644 does not support moving the whole interrupt vector
table into the bootloader section. So any interrupt (other than reset) would be
serviced by whatever you have in the application section. If you just
downloaded your bootloader that would be 0xFF. From experience I can tell you
that is a noop (logically) and the IP gets incremented as normal. So it runs
through your whole code section until it reaches something different than 0xFF
which is the bootloader reset vector (typically a rjmp). Looking from the
outside at the behaviour it would seem as if your processor gets reset,
although no reset source will be set (as you pointed out earlier).
Your best bet is going through your code and check if you enable any
interrupts, or if any of your library functions do so.
Markus
____________________________________________________________________________________
Fussy? Opinionated? Impossible to please? Perfect. Join Yahoo!'s user panel
and lay it on us. http://surveylink.yahoo.com/gmrs/yahoo_panel_invite.asp?a=7
- Re: [avr-libc-dev] Problem writing to flash - atmega644,
Markus Lampert <=