Hallo Leute.. Ich habe an einem ATmega128 externes RAM verbaut. Wie kann ich jetzt dem Compiler mitteilen, dass die Variable Zb uint8_t puffer[4096]; im externen RAM angelegt werden soll? Ist es möglich, dem Compiler zu sagen, ab welcher Adresse (diese) Variable(n) im Speicher stehen sollen? Danke im Voraus
Wenn du das willst, warum schreibst du dann nicht gleich einfach
1 | uint8_t *puffer = (uint8_t *)0x8001100; |
? Ansonsten, wie heißt's so schön: RTFDoc. In der avr-libc-Doku sind diverse Varianten beschrieben. Mfile hat einiges davon noch in Menüs zur einfachen Auswahl gefasst.
aha. und wie kann ich da jetzt drauf zugreifen, statt: uint8_t 8_bit_variable; uint16_t index; // 0..4095 .. 8bit_variable = puffer [ index ]; jetzt: 8bit_variable = *(puffer+index); ?? stimmt das?
aha. und wie kann ich da jetzt drauf zugreifen, statt: 8bit_variable = puffer [ index ]; jetzt: uint8_t 8_bit_variable; uint16_t index; // 0..4095 .. 8bit_variable = *(puffer+index); ?? stimmt das?
Matthias wrote: > und wie kann ich da jetzt drauf zugreifen, statt: Genauso wie auf das von dir geplante Array... > 8bit_variable = puffer [ index ]; Also so zum Beispiel. > 8bit_variable = *(puffer+index); Das ist eine zulässige, aber überaus umständlich anmutende äquivalente Schreibweise von Obigem.
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.