Hallo miteinander! Ich probieren auf Windows-XP mit AVR-Studio 5 einen Attiny26-16PU mit folgendem zu flashen: #include <avr/io.h> #define F_CPU 1200000UL // 1,2 MHz #include <util/delay.h> int main(void) { DDRA = 0xFF; while (1) { PORTA = 0x4c; _delay_ms(255); PORTA = 0x00; _delay_ms(255); } return(0); } Ich bekomme als Meldung vom AVR-Studio: Device: attiny26 Program: 3634 bytes (177.4% Full) (.text + .data + .bootloader) Data: 8 bytes (6.2% Full) (.data + .bss + .noinit) Done executing task "RunAvrGCC". Done building target "CoreBuild" in project "AVRGCC1.avrgccproj". Target "PostBuildEvent" skipped, due to false condition; ('$(PostBuildEvent)' != '') was evaluated as ('' != ''). Target "Build" in file "C:\Programme\Atmel\AVR Studio 5.0\Vs\Avr.common.targets" from project "C:\Dokumente und Einstellungen\Administrator\Desktop\AVRGCC1\AVRGCC1\AVRGCC1.avrgccproj" (entry point): Done building target "Build" in project "AVRGCC1.avrgccproj". Done building project "AVRGCC1.avrgccproj". Build succeeded. ========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ========== Sprich : Program: 3634 bytes (177.4% Full) Lasse ich delay.h und _delay_ms befehle weg, dann ist das programm nur wenige byte groß. Ich bitte um Unterstützung! Nette Grüße aus Stuttgart Robert Stefanowicz
Ins blaue geraten: Optimierung abgeschaltet. Kompilier' das Programm mal mit -Os
Project --> Properties Toolchain --> Optimization mfg marco
Marco Oklitz schrieb: > 160bytes ! das geht doch ^^ Prüf aber erst mal in der lst Datei ob die _delay_ms durch die Optimierung nicht komplett verschwinden ist.
hp-freund schrieb: > Prüf aber erst mal in der lst Datei ob die _delay_ms durch die > Optimierung nicht komplett verschwinden ist. Warum sollte die verschwinden. Wie steht in der delay.h so richtig: "In order for these functions to work as intended, compiler optimizations <em>must</em> be enabled, and the delay time must be an expression that is a known constant at compile-time."
Hab es gerade mal getestet: mit delay: 90byte ohne delay: 54byte Scheint alles in Ordnung zu sein. Ich ziehe meine Bedenken zurück ;-)
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.