INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Binärdaten auf SD-Karte schreiben
13.03.2020, 15:39
Beitrag #9
RE: Binärdaten auf SD-Karte schreiben
Ist das Bild nicht etwas groß?

Das müsste man austesten.

Immer ein Byte von Serial nehmen und zur SD schreiben. Die SD-Lib hat einen Puffer von 512 Byte (Sektorgröße der SD).
Vorher wohl den Dateinamen und die genaue Größe in Byte übertragen.

Hast Du Dir mal die SD-Verlängerungen angeschaut?

Welchen Arduino nutzt Du?

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.03.2020, 16:21
Beitrag #10
RE: Binärdaten auf SD-Karte schreiben
(13.03.2020 15:39)Tommy56 schrieb:  Ist das Bild nicht etwas groß?

Das müsste man austesten.

Immer ein Byte von Serial nehmen und zur SD schreiben. Die SD-Lib hat einen Puffer von 512 Byte (Sektorgröße der SD).
Vorher wohl den Dateinamen und die genaue Größe in Byte übertragen.

Hast Du Dir mal die SD-Verlängerungen angeschaut?

Welchen Arduino nutzt Du?

Gruß Tommy

Das Bild hat eine Auflösung von 284 x 210. Wenn es kleiner wird kann man kaum was erkennen. Seriell kann man vergessen.

Da ich das TFT_HX8357 benutze, ist direkt auf den Mega gesteckt, geht eine SD-Verlängerung nicht.

Die Programmgröße liegt z.Z. bei 98 K (kompilliert), für die Enladekurven benötige ich ein Integer-Array 6 X 300. Das Programm ist so geschrieben, dass es auf dem Mega und Aduino-Due läuft.

Ingo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.03.2020, 16:34
Beitrag #11
RE: Binärdaten auf SD-Karte schreiben
Ok, wenn die SD-Verlängerung und serielle Übertragung nicht gehen, musst Du halt den Weg über neu kompilieren gehen.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.03.2020, 16:50
Beitrag #12
RE: Binärdaten auf SD-Karte schreiben
(13.03.2020 16:34)Tommy56 schrieb:  Ok, wenn die SD-Verlängerung und serielle Übertragung nicht gehen, musst Du halt den Weg über neu kompilieren gehen.

Gruß Tommy

Die Binärdaten liegen auf dem PC - verbunden sind Arduino und PC über die Arduini-IDE. Wie soll das gehen?

Kennst du ein Programm, dass seriell Daten an den Arduino weitergeben kann?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.03.2020, 17:06 (Dieser Beitrag wurde zuletzt bearbeitet: 13.03.2020 17:17 von Tommy56.)
Beitrag #13
RE: Binärdaten auf SD-Karte schreiben
(13.03.2020 16:50)ingo46 schrieb:  Kennst du ein Programm, dass seriell Daten an den Arduino weitergeben kann?
Das kannst Du als Konsolenprogramm in einer Sprache Deiner Wahl doch selbst schreiben.

Gruß Tommy

Edit: oder mit etwas weniger Komfort (wobei man das in einer CMD-Datei auch ausbauen kann für sendAn):
Code:
MODE COMx:115200,N,8
COPY file.zip COMx: /B
x ist die Nummer Deines COM-Ports

Edit 2: Für Portnummern >=10
Code:
copy yourfile.ext \\.\COM21 /B

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.03.2020, 18:14
Beitrag #14
RE: Binärdaten auf SD-Karte schreiben
Hallo Tommy,

Problem gelöst - und das an einem Tag.
Test ergfolgreich. Ich muss mir nur noch Gedanken machen, wie ich den FileNamen übergebe und alles in den Akku-Tester übernehmen.

Die Übertragungsgeschwindigkeit muss auch noch getestet werden, habe mit 9600 gestetet, da ich noch nicht weiss, wie sich die TFT-Ansteuerung (über SPI) verhält.

Danke für deine Geduld und Hilfe.

Gruß
Ingo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.03.2020, 18:19 (Dieser Beitrag wurde zuletzt bearbeitet: 13.03.2020 18:26 von Tommy56.)
Beitrag #15
RE: Binärdaten auf SD-Karte schreiben
Die hat nichts mit der seriellen Geschwindigkeit zu tun. Die kannst Du problemlos auf 115200 setzen.

Gruß Tommy

Edit: Schau Dir mal den Artikel an.
Dateiname und Größe kannst Du evtl. als Text mit LineFeed ('\n') abgeschlossen kopieren.

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.03.2020, 20:46
Beitrag #16
RE: Binärdaten auf SD-Karte schreiben
Ich habe das unter Win10 mal probiert. Das geht grundsätzlich.
Die komplette Übertragung konnte ich nicht testen, da dann der Port blockiert war und ich keinen USB-Seriell-Wandler habe.

Wenn es hilft hier die Batch-Datei:
::@echo off
set filename=%1%
for %%F in (%filename%) do set groesse=%%~zF
for %%F in (%filename%) do set name=%%~nxF

echo %groesse%;%name%
MODE \\.\COM3:115200,N,8
echo %groesse%;%name% > \\.\COM3:

pause
[/code]
Sie sendet Länge;Name.ext an die COM-Schnittstelle. Eine Verknüpfung der CMD-Datei nach C:\Users\NAME\AppData\Roaming\Microsoft\Windows\SendTo kopieren.

Am ; trennen, den ersten mit '\0' terminieren und mit atol in einen unsigned long (sicher ist sicher) wandeln und schon sind beide Werte vorhanden.

Die Einleseroutine bis '\n' findet siich hier. Die Trennung habe ich angefügt.
Code:
// Länge Nutzdaten + 1
const uint8_t BUFLEN = 21;  // anpassen
char puffer[BUFLEN] = "12345;test.bin";  // Puffer für Länge und Dateiname

void setup() {
  Serial.begin(115200);
  Serial.println("Start");
  char *pos = strchr(puffer,';');
    *pos = '\0';
    Serial.print("Laenge: "); Serial.println(puffer);
    Serial.print("Name: "); Serial.println(pos+1);
}

void loop() {
}
Danach dann im loop die übertragene Bytemenge auf die SD schreiben.

Es ist schon erstaunlich, was heute mit Bordmitteln von Win10 machbar ist.
Mit Powerscript wäre es noch komfortabler machbar (da gibt es auch GUIO-Erweiterungen) oder mit Processing (JAVA)

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  BME280 auf SD Karte loggen atmel900 15 457 29.01.2021 15:50
Letzter Beitrag: Tommy56
  Daten zeilenweise von SD-Karte lesen Karl Stanger 3 313 06.01.2021 13:00
Letzter Beitrag: Tommy56
  Variable mit Werten von SD-Karte füllen DO3GE 16 2.110 14.04.2020 19:38
Letzter Beitrag: Corvus
  SD shield / Kein Zugriff auf Karte Ernie70 33 3.927 10.01.2020 18:06
Letzter Beitrag: Tommy56
  Schreiben von Arduino Nano auf SD Karte mit 80 Hertz Joshua_Gunjah 8 1.794 27.11.2019 18:43
Letzter Beitrag: Tommy56
  SD-Karte Ersten und Letzten wert anzeigen Luis90 1 1.002 12.11.2019 12:23
Letzter Beitrag: Tommy56
  Scatch schreiben. lucibad 5 1.333 12.09.2019 12:10
Letzter Beitrag: Chopp
  SD Karte sicher entfernen Peter05 6 1.832 28.06.2019 22:42
Letzter Beitrag: GuaAck
  SD-Karte immer 1. Datensatz in Datei überschreiben FritzHelmut 9 3.192 25.01.2019 14:04
Letzter Beitrag: Tommy56
Smile Punktestand von einem Arduino in eine Access Datenbank schreiben ThePhil 8 2.962 16.07.2018 22:24
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste