Hi! Folgendes Problem: Ich möchte von der normalen Arduino IDE langfristig auf AVR-Studio umsteigen, da mir dies mehr Möglichkeiten bietet. Dennoch möchte ich am Anfang noch die allgemeine Arduino Library benutzen, einiges geht dadurch halt doch (noch) einfacher. Diese habe ich nach einer Anleitung eingebunden. Dies funktioniert auch soweit, und ich kann Programme mit normalen Arduino Befehlen wie z.B. Serial.println("Hallo Welt"); ohne Fehler kompilieren. Library ist also richtig eingebunden. Jetzt ist aber das Problem, dass die vom AVR-Studio erzugten Hex Dateien VIEL größer als die von der Arduino IDE erzeugten IDE sind. Konkret sind das z.B. 3,6kbytes von der Arduino IDE und 9,5kbytes von AVR Studio beim Arduino Beispiel http://arduino.cc/en/Tutorial/ReadASCIIString An was kann das liegen? Wäre für jede Antwort dankbar! Grüße!
Hi! Bei den "Project Properties" sind under Toolchain sowohl bei AVR/GNU C Compiler als auch bei AVR/GNU C++ Compiler "Optimize for size (-Os)" eingestellt, daran kanns also nicht liegen. Grüße!
Vorab schonmal danke für die schnelle Antwort! Ich weiss jetzt aber leider nicht genau, was es mit "Floating Point Variante von printf gelinkt?" auf sich hat. Habe über google die FAQ hier gefunden. Werde da aber auch nicht schlau daraus, dort gibt es bloß Hilfe zum Aktivieren dieser floating Point Variante. Irgendwelche Tipps wie man feststellen kann ob das aktiviert ist? Grüße!
Debuging aktiviert? Dann wird das Compilat auch größer! Auf Release stellen, dann sollte es kleiner werden, weil die Debug-Informationen fehlen.
Student schrieb: > An was kann das liegen? Lade doch mal die Hex-Files als Anhang hoch. So ist das wie Kaffeesatzlesen ohne Kaffeesatz.
Also, ich denke nicht, dass das Debugging aktiviert ist. Ich erzeuge das Hex indem ich auf "Build" => "Build projektname" drücke. Unter "Debug" ist der Eintrag "Stop Debugging" ausgegraut. Dann sollte ja das Debugging nicht aktiv sein, oder? Hätte das aktivierte Debugging überhaupt einen Einfluss auf die Größe des Hex? Im Hex ist doch der reine Maschinencode, oder? Grüße!
Student schrieb: > Konkret sind das z.B. 3,6kbytes von der Arduino IDE und 9,5kbytes von > AVR Studio beim Arduino Beispiel > http://arduino.cc/en/Tutorial/ReadASCIIString Das läßt sich mit AS nicht übersetzen, das sind ja haufenweise Arduino Aufrufe. Vermutlich linkst Du da ne riesige Arduino-Lib hinzu und das kostet eben. Und auf dem vorprogrammierten Arduino ist die Lib ja bereits im Flash und wird nur aufgerufen. Daher der Größenunterschied.
hmm ok, das könnte natürlich sein. Hab gerade nachgeschaut, die Arduino Library hat über 300kb. Könnte natürlich sein, dass da dann einiges an Speicher dafür draufgeht. Werde also den Code nochmal in C neuschreiben. Gute Übung, wa? ;-) Grüßle...
Peter Dannegger schrieb: > Und auf dem vorprogrammierten Arduino ist die Lib ja bereits im Flash > und wird nur aufgerufen. Daher der Größenunterschied. Schwachsinn. Da ist auch nur der Bootloader drauf.
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.