Forum: Compiler & IDEs GCC-Assembler (AVR): Wie können Daten im SRAM ausgerichtet werden?


von Bert (Gast)


Lesenswert?

1
.section .bss
2
// Ausrichtung des folgenden Speicherbereichs
3
.comm GTimes, 0x100


Der Speicherbereich für GTimes (Länge 256 Bytes) soll mit 0xnn00 im SRAM 
starten.

Versucht habe ich es mit .align n und .balign n.Egal was ich für n 
einsetze, die Adresse von GTimes ändert sich nicht.

Was muss ich tun, damit GTimes mit 0xnn00 startet?

von Bert (Gast)


Lesenswert?

Meine Frage hat sich erledigt. Bei den AVR-Freaks habe ich die Antwort 
gefunden:

1
.section .bss
2
.comm GTimes, 0x100, 0x100


Die 2. Angabe hinter GTimes ist die Ausrichtung.

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

Wobei das ".section .bss" überflüssig und verwirrend ist, weil die Daten 
in der common Sectio landen.

Damit die Daten auch initialisiert werden, sollten sie in Data liegen, 
z.B.
1
.data
2
.global mydata
3
.balign 0x100
4
mydata:
5
.fill 0x100,2,0x1234

http://sourceware.org/binutils/docs/as/Fill.html#Fill

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
Noch kein Account? Hier anmelden.