Hi, ich möchte eine Testroutine schreiben die ein Muster (0xAA/0x55) abwechselnd erst in die oberen 5% des ramspreichers schreibt und anschließend diesen bereich an die unteren 5% des ramspeichers kopiert. Jetzt meine Frage: Wie lege ich fest das diese 10% des Ram freigehalten werden? Also ich kenne "malloc" in C, aber damit kann ich ja nicht entscheiden wo der Speicherbereich reserviert wird. Gruß Marco
>Ohne ASM wird's kaum gehen klar geht das: einmal unschoen: uint8_t pointer = 0x0000; *pointer = 0xaa; schoener: eigene .sections anlegen: http://www.roboternetz.de/wissen/index.php/Avr-gcc/Interna#Speicherverwaltung http://www.nongnu.org/avr-libc/user-manual/mem_sections.html
An's RAM-Ende würde ich keine Daten schreiben, da wächst der Stack. Auch in ASM, wenn du den Stackpointer nicht anderweitig initialisierst.
Adressieren ist Eines und dabei keinen Mist bauen was Anderes. Bei statischem RAM macht der Test eh nur Sinn wenn man damit die Belastung an ionisierender Stahlung, wie zB im Flugzeug messen will.
Hi, danke für die Hilfe, ich werde es mit sections machen und dem Linker mitteilen was Sache ist. marco @ nop() Dein Verdacht ist schon ganz richtig, nur eben nicht fürs Flugzeug sondern fürs Auto
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.