Serial.print(F(“Hello World”))

Hiho,

was ist denn mit "flash-memory based strings" gemeint?

You can pass flash-memory based strings to Serial.print() by wrapping them with F()

Quelle: http://arduino.cc/en/pmwiki.php?n=Serial/Print

Danke!

wenn ich's recht verstanden habe:
die strings werden immer als Konstanten abgelegt.
Normalerweise wird dazu während der Laufzeit das wertvolle RAM benutzt, per F(...) werden sie hingegen im großzügiger bemessenen Flash gespeichert.

Ok.

Das klärt mich auf.

Danke dafür!

immer gern :slight_smile:

Um preziese zu sein.
Die Texte werden im Flash mit dem Programmcode gespeichert. Ohne die F() Makro werden sie aber ins RAM kopiert bevor sie zb mit Serial.print("text") ausgegeben werden. Mit dem F() Makro entfällt der Umweg RAM und somit wird kein RAM besetzt.

Grüße Uwe