(jag tror inte den går baklänges, utan att en minnesplats ändras felaktigt någonstans)
Det jag har är en atmega644p med en 32khz kristall kopplad till timer2.
Sen har jag en variabel som räknas upp för varje sekund i ett interrupt.
Kruxet är att när jag deklarerar den som .noinit så uppstår problemet, men inte om jag inte deklarerar den som .noinit
såhär deklarerar jag den som noinit
Kod: Markera allt
static volatile dword elapsed_time __attribute__ ((section (".noinit")));
Kod: Markera allt
static volatile dword elapsed_time;
Kod: Markera allt
ISR(TIMER2_OVF_vect)
{
elapsed_time++;
}
eller kan det vara något annat som görs att minnet "råkas" användas till annat?