Hallo Leute, Umgebung: WinAVR 4.12 SP4 (498) AVRgcc 20060421 STK500 Mein Problem ist folgendes: Wenn ich die Codeoptimierung in den Projekteigenschaften von -O0 auf einen der anderen Werte (-O1 -> -Os) setzte, dann funktioniert meine Uart Verbindung nicht mehr. Wird mit der Einstellung -O0 compiliert läuft alles wunderbar. Hat jemand eine Idee ?? Grüße, Michael
Du hast irgendwo einen Fehler in der Software, oder ein Timingproblem.
Die Software funktioniert eigentlich schon, aber eben nur wenn ich die Optimierung ausschalte. Wie kann ich rausfinden ob es sich um ein Timing Problem handelt und wie lokalisiere ich es ?
Schau dir das ASM Listing an, ob das dem erwarteten C Code entspricht. Alternativ zeige den C-Code und lasse Forenteilnehmer einen Blick drauf werfen. Beim neueren GCC 4.1.1 ist ein typ. Beispiel für "unerwartete" Effekte, dass dort aus GCC Sicht unnütze Schleifen wegopimiert werden { int i; for(i=0;i<1000;i++); } als Primitiv-Warteschleife streicht der 4.1.1 GCC bei eingeschalteter Optimierung zusammen zu { }
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.