Große Datenmengen über TCP in ext. Flash schreiben

Gast #5690913
Lesenswert?
• ▲
▼
Hallo,
ich möchte über die Ethernet-Schnittstelle eine bestimmte Datenmenge 
(ca. 300kB) empfangen und in einem externen SPI-Flash wegspeichern, da 
der eingesetzte STM32F4 nicht genug RAM hat.


Mit dem Thema TCP/IP-Stack kenne ich mich aktuell leider noch nicht so 
gut aus. Es geht darum, ob das Vorhaben auf diese Weise überhaupt 
möglich ist.


Die Idee ist folgende:

1) Empfang der Daten mittels TCP/IP-Stack (max. 1460 Byte Datenframe?)
2) Die Daten mittels DMA und SPI mit Page-Write ins externe Flash 
schaufeln

3) Jetzt erst das TCP-Acknowledge senden (lässt sich das so einfach 
verzögern?)
4) Empfang des nächsten Frames -> Punkt 1)



Hat jemand schon so etwas ähnliches gemacht und weiß ob es funktionieren 
würde?
#5690929
Lesenswert?
• ▲
▼
spi schrieb:
> 1) Empfang der Daten mittels TCP/IP-Stack (max. 1460 Byte Datenframe?)

Das kannst du über die MTU deiner Verbindung regeln.

spi schrieb:
> 3) Jetzt erst das TCP-Acknowledge senden (lässt sich das so einfach
> verzögern?)

Über das TCP Receive Window kannst du steuern, wie viele Daten du vor 
einem ACK empfangen kannst.

Es kann allerdings passieren, dass du die Daten in einer anderen 
Stückelung, als die von dir angegebene Größe bekommst. Außerdem musst du 
auch damit klarkommen, dass du noch andere Pakete empfängst (z.B. 
broadcasts). Die belegen auch Speicher beim Empfang, auch wenn du die 
Daten gar nicht haben wolltest.

Antwort schreiben

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.

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.