Hallo,
ich verwende in meinem Bootloader (auf dem tutorial zu c bootloadern
basierend) folgendes:
1 | memset(flash_data, 0xFF, sizeof(flash_data));
|
dieses commando bringt den uc sofort zum abstürzen und neustarten. Das
witzige ist, dass ich das kommando schon immer drinn hab und es im
tutorial auch drinn steht.
definition:
1 | uint8_t flash_data[SPM_PAGESIZE];
|
2 |
|
3 | includes:
|
4 |
|
5 |
|
6 | #include <string.h>
|
7 | #include <stdlib.h>
|
8 | #include <stdio.h>
|
Wieso kann dieser Befehl abstürzen? Vor allem wird er direkt in der
initialisierung des Programs auch ausgeführt, dort aber ohne probleme.
Nur mitten während der laufzeit gibt es sofort einen absturz - liegt
auch definitiv an dem befehl, ohne läufts.