www.mikrocontroller.net

Forum: Compiler & IDEs Variable Anzahl Pufferbytes von LCD ´runterladen - Alternative zu dynamischer Speicherzuweisung?


Autor: Harald (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich stehe hier vor dem Problem, daß ich von einem LCD über SPI den 
Sendepuffer auslesen muß. Die Anzal der zu lesenden Pufferbytes kann vor 
der Übertragung ermittelt werden, ist aber von Fall zu Fall verschieden.
Im Moment veruche ich das Problem mit Pointern und der Allokation von 
Speicher zu lösen, aber das führt immer wieder zu Problemen.

Gibt es ein anderes Verfahren, mit dem dieses Problem gelöst werden 
kann? malloc ist ja sehr Fehleranfällig (Heap-Fragmentierung etc.)

Gruß,
Harald

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Hauptfrage: Gibt es eine Obergrenze für das Auszulesende?
Also eine Grenze über die du nie drüberkommen wirst, egal
was du vom LCD ausliest.

Wenn ja, dann dimensioniere ein Array in dieser Größe und lebe
damit, dass du manchmal Speicher verschwendest.

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was ist mit der klassischen altmodischen Art?

Ein Array fest anlegen, dass so groß ist, wie du maximal an Daten lesen 
kannst. (Ne Art worst-case Betrachtung)
Und einfach den Rest des Arrays frei lassen. Du weißt ja eh, wieviel 
Daten "gültig" sind.

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht auch die Daten immer nur Stückchenweise empfangen und 
verarbeiten. Dann könnte die Puffergröße fixiert bleiben.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.