Gast
#694277
Hallo, ich habe mir mittlerweile schon etliche Beiträge zum Thema durchgelesen, bin mir nicht sicher ob ich alles verstanden habe. Ich möchte an das XMEM-Interface vom AT90CAN128 ein Gerät (z.B. ein LCD oder SRAM) anschliessen. Das angeschlossene Gerät hat 64kB Speicher. Programmiert wird mit WinAVR. Hardware-technisch ist soweit alles klar, also mit HC573 als Latch (wie im AT90CAN128-Datenblatt, Seite 26). Ich möchte nun dass alle Variablen, der Heap und der Stack im internen RAM bleiben und ich vom Programm aus direkt auf den kompletten externen Speicherbereich zugreifen kann. Um 64kB an externem Speicher komplett adressieren zu können, gibt es ja den "Workaround" mit den XMMx-Bits (siehe z.B. AT90CAN128-Datenblatt, Seite 32). Nun zur vorgehensweise im Programm: - ich aktiviere SRE, also das externe Interface - greife dann über Zeiger auf den externen Speicher zu (wie z.B. hier Beitrag "Re: Variablen im RAM positionieren" beschrieben) - wenn die Adresse nun unter 0x1100 liegt, arbeite ich zusätzlich mit den XMMx-Bits - die EXMEMOPTS im Makefile lasse ich wie sie sind - die Steuerleitungen werden vom uC selbst (automatisch) "bedient" Stimmt das so? Muss ich noch etwas beachten oder habe ich noch etwas vergessen?