avr-gcc wie gehts richtig mit PSTR

OP #4952047
aus
sprintf(s_out_str, "hellxx (%d)-(%d)", MIN_BL, MAX_BL);

sprintf_P(s_out_str, "hellxx (%d)-(%d)", MIN_BL, MAX_BL);
oder
sprintf_P(s_out_str, PSTR("hellxx (%d)-(%d)"), MIN_BL, MAX_BL);
oder
sprintf(s_out_str, PSTR("hellxx (%d)-(%d)"), MIN_BL, MAX_BL);

???
welche Version ist richtig, funktioniert und spart SRAM?

Ich versuche alle Möglichkeiten, mal wird der Code zu groß, mal geht mir 
das SRAM aus
OP #4952087
danke für deine Antwort

gebrachts hats mir leider (noch) nichts

flash
alle mit sprintf
30.690 Bytes (von einem Maximum von 30.720 Bytes)
alle mit sprintf_P
30.904 Bytes (von einem Maximum von 30.720 Bytes)

ich habe ein flash & SRAM Problem nur deswegen vom nano328p auf den 
mighty_mini1284p gehen möchte ich (noch) nicht.
#4952190
Also wenn sowohl dein Flash, als auch dein RAM komplett voll sind, dann 
musst du entweder schauen, ob du irgendwelche großen Speicherfresser 
hast, die du ersetzen kannst oder einen größeren µC nehmen. Es hat doch 
keinen Zweck, mit verschiedenen sprintf-Varianten zu jonglieren, in der 
Hoffnung, noch drei Bytes einsparen zu können, damit's passt.
Beitrag #4952221 wurde von einem Moderator gelöscht.
OP #4952365
nun ja ich bin ja schon am aufräumen, das muss reinpassen

ich kann ja noch reichlich an Texten sparen und an Variablen

man fängt halt mal einfach gemütlich an

dann stellt man fest das man weniger Variablen braucht -> schmeisst die 
also raus
dann Texte müssen nicht so ausführlich sein -> gekürzt reicht auch


ich bin auf einem guten Weg.....

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.