Gast
#1077939
Ich habe folgende Situation. Wenn ich das Atmega-Programm (C) nur mit
einer anderen oder gar keinen GCC Optimierung compile, funktioniert
alles wunderbar. Wird jedoch die Optimierung auf -Os geschaltet, spring
das Programm nicht an die gewünschte Stelle.
Das sieht ca so aus
#define KURZ 0x00
#define LANG 0x01
unsigned char bed = 0;
...
bed = LANG;
...
if(bed == LANG)
{
...
}
if(bed == KURZ)
{
...
}
Wie kann sowas eigentlich sein? Der Compiler kann doch nicht auf Kosten
der Funktionalität optimieren?
Kann leider nicht den originalen Code reinstellen. Aber so ca. sieht das
Ganze aus (der Code wird nicht in einer ISR ausgeführt).