Forum: Compiler & IDEs string aus Flash mit strcpy_P


von Günni (Gast)


Lesenswert?

Hallo,

ich bräuchte Hilfe.
Mein Problem ist, dass mein SRAM immer weniger wird und die Auslagerung
von Strings so nicht funktioniert wie ich es gerne hätte.

Ich versuche Strings auf dem Flash so zu verarbeiten:

//***************
char s1[26];

strcpy_P(s1,"Hallo");
//***************

Leider gibt es aber keinen Unterschied bei der Belegung des SRAM wenn
ich es so mache:

//***************
char s1[26];

strcpy(s1,"Hallo");
//***************

Wo liegt mein Denkfehler?

Grüße
Günni

von Jörg Wunsch (Gast)


Lesenswert?

strcpy_P(s1, PSTR("Hallo"));

von OldBug (Gast)


Lesenswert?

char s1[26];

s1 liegt im RAM...
Du musst dafür sorgen, daß s1 im PROGMEM liegt, kann da aber nichts
weiter zu sagen, weil ich das alles selber noch nciht verwendet habe.
Aber es gibt einen netten Beitrag im Wiki dazu:

http://www.mikrocontroller.net/wiki/AVR-GCC-Tutorial#Speicherzugriffe

von Günni (Gast)


Lesenswert?

Danke! PSTR() hat geholfen!

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.