Hallo, vor kurzem habe ich in meinem compilierten Code eine zusätzliche Sektion bemerkt, die ich nicht genau zuordnen kann. Ich arbeite in der Eclipse-Umgebung mit dem AVR-Plugin und dem gcc-Compiler. Der Quellcode liegt in C vor. Am Ende der *.hex-Datei ist noch eine Sektion angehängt, welche ich in der *.lss-Datei nicht finden kann. In der *.map-Datei habe ich dazu nur folgenden Eintrag gefunden: 0x000031e6 _etext = . Die Adresse in der *.map-Datei stimmt mit der Startadresse der Sektion in der *.hex-Datei überein. Was wird hier gemacht? Der Code verhält sich so wie er soll. Was bringt die zusätzliche Sektion mit sich? Angesprungen wird sie soweit ich sehen kann aus dem Code heraus auch nicht. Vielen Dank für alle Antworten.
_etext markiert das Ende vom Code. Das dürften die Initialisierungsdaten sein, die im Startup-Code in die Data-Section vom RAM kopiert werden.
EEPROM ist es vermutlich nicht, da die Adresse nicht zum EEPROM passt. RAM-Initialwerte wären eine plausible Möglichkeit. Jedoch bleibt mit der Zusammenhang zwischen dem Initialisierungswert im Code und der Wert in der *.hex-Datei verschlossen.
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.