Forum: Mikrocontroller und Digitale Elektronik C/C++ Ein Byte in einen bestimmten RAM bereich schreiben


von Patrick E. (f4550tim)


Lesenswert?

Hallöchen,

wie kann ich in C/C++ (Atmel Studio) ein Byte (z.B. 0x0F) auf den 
Datenspeicher Adresse 0x0100 schreiben ?

Vielen Dank :)

LG Patrick

von Daniel A. (daniel-a)


Lesenswert?

Wenn der compiler bereits weiss, dass die adresse "besonders" ist:
*(char*)0x0100=0x0F;

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Patrick E. schrieb:
> wie kann ich in C/C++ (Atmel Studio) ein Byte (z.B. 0x0F) auf den
> Datenspeicher Adresse 0x0100 schreiben ?
Warum willst du das tun? Der Speicher wird vom Compiler verwaltet. Meist 
ist es keine gute Idee dem Compiler so in die Parade zu fahren. Genau an 
dieser Stelle könnte ja eine Rücksprungadresse auf dem Stack liegen...

von dunno.. (Gast)


Lesenswert?

Ich kenne das so, dass man dem linker explizit verbietet, bestimmte 
Adressen zu verwenden, und die dann manuell beschreibt.

ZB zur Kommunikation zwischen zwei firmwares (bootloader, Applikation)

von Patrick E. (f4550tim)


Lesenswert?

Danke für die Infos. Ich weis das es nicht wirklich sinnvoll ist. Es 
ging um eine rein theoretische Frage.

Muss dies noch testen ob es mit *(char*) 0x0100 = 0x0F; geht.


Danke :)

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.