Forum: Mikrocontroller und Digitale Elektronik Speicher mehrfach benutzen


von schnuremaus (Gast)


Lesenswert?

Hallo,

PIC32MX795F512L  C32

Welche Möglichkeit besteht, RAM mehrfach zu nutzen?

Das RAM ist in mehrere Array unterteilt
Beispiel:
RAM_1[512]
RAM_2[128]
RAM_3[128]
RAM_4[128]
RAM_5[128]

RAM_1 wird nur zum "booten" benötigt

in der main  while Schleife wird RAM_2 bis RAM_5 benutzt.

Kann ich die Blöcke 2 - 5 unter dem Block 1 ansprechen?

schönen Tag

von Max H. (hartl192)


Lesenswert?

schnuremaus schrieb:
> Kann ich die Blöcke 2 - 5 unter dem Block 1 ansprechen?
1
uint8_t RAM_1[512];
2
uint8_t *RAM_2 = RAM_1;
3
uint8_t *RAM_3 = RAM_2 + 128;
4
uint8_t *RAM_4 = RAM_3 + 128;
5
uint8_t *RAM_5 = RAM_4 + 128;

von schnuremaus (Gast)


Lesenswert?

Hallo,

Danke.
Muß mir jetzt überlegen, wie ich alles anlege.
schönen Tag

von union (Gast)


Lesenswert?

1
static union
2
{
3
  char RAM_1[512];
4
  struct 
5
  {
6
    char RAM_2[128];
7
    char RAM_3[128];
8
    char RAM_4[128];
9
    char RAM_5[128];
10
  };
11
};

von Magic S. (magic_smoke)


Lesenswert?

RAM kann man natürlich nur einmal verwenden.
Danach ist es verbraucht und muß ausgetauscht werden.

SCNR

von Vater (Gast)


Lesenswert?

Man kann die Initialisierung auch in ein Unterprogramm auslagern. Lokale 
Variablen belegen dann nur während der Unterprogrammausführung den 
Speicher. Das dürfte die saubersten Variante sein.

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.