Wiederholende UART Sequenzen in Funktionen packen?

Gast #1784186
Hallo Leute,

ich erstelle ein ziemlich ausgebautes UART-Menü mit uart.h von Peter 
Fleury auf einem ATmega8.
Gewisse Textsequenzen wiederholen sich oft, wie z.B.

uart_puts_P "Enter the "; oder
uart_puts_P "The parameter must be in range ";

Ich stelle mir die Frage: lohnt es sich solche Sequenzen in Funktionen 
zu packen?

Von einer Seite speichert Fleury´s uart.h die Strings automatisch im 
Flash...

Von anderer Seite wird für häufige Funktionsaufrufe der wertvolle RAM 
verbraucht - und auch etwas Flash.

Könnte mir jemand einen Erfahrungswert nennen, ab wie langen String 
lohnt es sich ihn in Funktion zu packen, z.B.

uart_puts_P "Setup"; lieber mehrmals String?
uart_puts_P "The parameter must be in correct range bla bla bla..."; 
lieber in Funktion?

Danke voraus für die Ratschläge

Michal
Du legst nur verschiedene Strings im Flash an.
Die Menüauswahl setzt dann Pointer auf die enstprechenden Strings.
Und die Menüausgabe gibt dann alle Pointer aus.
Nicht benötigte Pointer zeigen auf nen Leerstring.


Peter

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 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.