Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Schreibgeschwindigkeit SD-Card Kategorie: Programmierung C (von Joerg - 4.09.2015 14:09)
Als Antwort auf Re: Schreibgeschwindigkeit SD-Card von UlliS - 3.09.2015 14:14

> > > > > > > > > Hallo,
> > > > > > > > >
> > > > > > > > > ich verwende den Mega128CAN mit SD-Kartenmodul, Display usw.
> > > > > > > > > Bei meiner Anwendung werden alle 10ms 5 Bytes vom CAN gelesen und mit 5 weiteren Bytes (also
> > > > > > > > > insgesamt 10 Bytes) in ein ge├Âffnetes File der SD-Karte geschrieben. Das funktioniert auch
> > > > > > > > > f├╝r ein paar Sekunden, dann dauert der Schreibvorgang ├╝ber 10ms und das gesamte Programm kommt
> > > > > > > > > durcheiander. Ich vermute das passiert immer wenn 512 Bytes voll sind und der Sektor physikalisch
> > > > > > > > > geschrieben wird.
> > > > > > > > > Ich habe den SPI-Bus auf max Datenrate konfiguriert (fosz/4). Damit m├╝ssten bei 16MHz 4 kByte/ms
> > > > > > > > > ├╝bertragen werden. Ich habe schon alle m├Âglichen Abl├Ąufe mit SDC_FSync (auch nach jedem 10 Byte-
> > > > > > > > > Paket) versucht. Damit kann ich zwar die ├ťbertragungszeit beeinflussen, komme jedoch nicht unter
> > > > > > > > > 10ms.
> > > > > > > > > Es kann doch nicht sein, dass f├╝r schlappe 512Bytes mehr als 40kBytes Strukturdaten gesendet werden -
> > > > > > > > > oder mache ich einen Granatenfehler???
> > > > > > > > >
> > > > > > > > > Ich bin f├╝r jede Hilfe dankbar - mir gehen echt die Ideen aus!
> > > > > > > > >
> > > > > > > > > Danke im Voraus
> > > > > > > > > Volker
> > > > > > > > >
> > > > > > > >
> > > > > > > > Hallo Voker
> > > > > > > > speichere deine Daten doch erst mal im RAM.
> > > > > > > > Wenn dann mal Zeit ist, k├Ânnen die Daten auf die SD geschrieben werden.
> > > > > > > > Gru├č Daneie
> > > > > > >
> > > > > > > Hallo Daneie,
> > > > > > >
> > > > > > > danke f├╝r den Tip. Es fallen jedoch zu viele Daten f├╝r das RAM an: Die Messung muss bis 20Min ohne
> > > > > > > Unterbrechung funktionieren. D.h. es fallen bei 10Bytes/10ms -> 1kBytes/Sec -> 60kBytes/min ->
> > > > > > > 1,2MBytes/20Min an. Deshalb kam ich auf die Idee mit der SD-Card. Dass die Daten├╝bertragung so lange
> > > > > > > dauert hatte ich mir jedoch nicht tr├Ąumen lassen.
> > > > > > > Gru├č Volker
> > > > > >
> > > > > > Hallo,
> > > > > >
> > > > > > und wie ist das, wenn man immer 512Byte im RAM sammelt und die Daten in einem thread oder verschickt?
> > > > > >
> > > > > > Gr├╝├če Joerg
> > > > >
> > > > > Hallo,
> > > > > wie sehen deine Daten aus?
> > > > > Ändern die sich alle 10ms oder hast du auch 50-mal hintereinander den gleichen Wert.
> > > > > Wenn das so ist k├Ânntest du die Daten komprimieren.
> > > > > Man kann 50-mal eine Null (50 Byte) senden oder man kann sagen jetzt kommen 50 Nullen (5 Byte).
> > > > > Das gleiche geht auch mit gleichen Datenfolgen.
> > > > > Gru├č Daneie
> > > > >
> > > > Hallo Joerg und Daneie,
> > > > bei dem Ger├Ąt handelt es sich um einen sogen. Tripmaster, der in einem Rallye-Fahrzeug dem Beifahrer
> > > > haupts├Ąchlich Wegstrecken, Zeit und einige Stoppuhren zur Verf├╝gnung stellt. Nebenbei will ich
> > > > Betriebsdaten vom CAN mitloggen. Diese Daten sind also nicht konstant. Es w├╝rde vielleicht reichen
> > > > nur alle 100ms zu speichern, aber auch daf├╝r reicht das RAM nicht ├╝ber die Messzeit.
> > > > An das ├ťbertragen in einem separaten Threat habe ich auch schon gedacht jedoch bisher noch nie mit
> > > > Threats gearbeitet. So wie ich das verstanden habe kann man jedoch nicht in den gleichen 10ms
> > > > in einem Threat die Daten erfassen und die Anzeige bedienen und im zweiten Threat Daten ├╝bertragen.
> > > > Die Datenerfassung muss aber zwingend alle 10ms erfolgen sonst stimmen Uhren und Strecken nicht.
> > > > Wenn jedoch in den gleichen 10ms zwei Threats bearbeitet werden k├Ânnten w├Ąre das die L├Âsung - nur
> > > > brauche ich dazu einen Tip ob das geht. Sonst f├Ąllt mir nur noch ein die Daten mit einem selbst
> > > > programmierten Protokoll an die SD-Card zu schicken. Sie l├Ągen dann aber nicht in einem FAT-System
> > > > vor und w├Ąren nicht mit Windows auslesbar.
> > > >
> > > > Also wenn Euch noch etwas einf├Ąllt - Danke!
> > > > Volker
> > >
> > > SD-Karten und Timing ist immer problematisch.
> > > Schau dir mal SPI SRAM Bausteine an z. B.
> > >
> > > http://www.conrad.de/ce/de/product/651222/NVSRAM-nichtfluechtiges-SRAM-23LCV1024-IST-
> > > TSSOP-8-Microchip-Technology?ref=searchDetail
> > >
> > Hallo Ulli,
> > gute Idee. Muss dann zwar die Datenrate reduzieren um 20 Min messen zu k├Ânnen und das Layout
> > ├╝berarbeiten aber so kann es gehen.
> > Ich danke Euch allen f├╝r Eure Tipps. Schade finde ich nur, dass sich vom Entwicklerteam niemand
> > meldet. Die m├╝ssten doch wissen was an Daten ausgetauscht wird. Mit einer kurzen Antwort w├Ąre dann
> > klar ob ich den aktuellen Weg verlassen muss. Aber irgendwie habe ich den Eindruck die C-Control
> > stirbt aus.
> > Volker
>
> Hi Volker,
>
> in der C-Control wir eine Art von http://elm-chan.org/fsw/ff/00index_e.html SD-Card Lib. verwendet.
> Leider sind die Timings bei SD-Cards unterschiedlich und f├╝r deine Anwendung nicht so wirklich geeignet.
> Ich w├╝rde den "Umweg" ├╝ber den SRAM machen, evtl. auch nur um die Daten zu puffern (Ringpuffer).
> SD-Cards halten auch nicht wirklich lange, wenn Sie so oft beschrieben werden. In den meisten Anwendungen
> werden die Daten nur 1x am Tag auf die SD geschrieben (Langzeit Aufzeichnungen).
>

Hallo UlliS,


>SD-Cards halten auch nicht wirklich lange, wenn Sie so oft beschrieben werden.
>In den meisten Anwendungenwerden die Daten nur 1x am Tag auf die SD geschrieben
>(Langzeit Aufzeichnungen).

das stimmt nicht so ganz:

http://ccpro.cc2net.de/forum/lesen.php?eintrag=9269

Ich selbst habe auch schon mal wochenlange Tests mit SD Karten und sek├╝ndlichen
Schreiben und Lesen durchgef├╝hrt.
Die Kontroller achten schon darauf, immer alles sch├Ân zu verteilen.
Selbst bei einer fast vollen Karte habe ich nie Probleme festgestellt.

Gr├╝├če J├Ârg



    Antwort schreiben


Antworten:

Re: Schreibgeschwindigkeit SD-Card (von UlliS - 4.09.2015 16:24)