SD-Karte über Arduino-USB am PC auslesen

Tachchen,

In der Überschrift steht eigentlich schon mein Problem. In einem Projekt mit einem Mega werden Daten auf einer SD-Karte gespeichert. Wenn ich die gespeicherten Werte auslesen will muß ich diese jetzt raus nehmen und mit einem Cardreader am PC auslesen.
Ist es möglich, die SD-Karte direkt über den Mega-USB Port auszulesen und die vorhandenen Dateien im Windows-Dateimanager zu kopieren?

Danke und Grüße

Nein. Die Karte hängt ja nicht ja nicht an USB, sondern am SPI Bus.

Nein, das geht nicht. Die Kommunikation mit dem Mega geschieht ausschließlich durch eine über USB hergestellte serielle Schnittstelle. Dass dein Arduino als Datenträger erkannt wird ist nicht vorgesehen. Allerdings könnte man PC-seitig ein Tool programmieren, was die Daten über die serielle Schnittstelle einliest und dann als Datei abspeichert.

Sijjim: Ist es möglich, die SD-Karte direkt über den Mega-USB Port auszulesen und die vorhandenen Dateien im Windows-Dateimanager zu kopieren?

Nein, über ein USB Mass-Storage Device ist es nicht so ohne weiteres möglich, Daten auf den PC zu bekommen. SD-Karten auf dem Arduino werden nur per SPI-Schnittstelle angesprochen.

Aber über Serial kannst Du aufgezeichnete Daten normalerweise problemlos auf den Seriellen Monitor senden.

Dein Programm braucht nur eine irgendwie geartete Steuerung. um auf Kommando oder beim Umlegen eines Schalters oder drücken eines "Daten-Senden"-Tasters die Datei zu öffnen, den Inhalt in einem comma-seperated oder tab-separated Format an die Serielle Schnittstelle zu senden, und die Datei dann wieder zu schließen.

Hohe Baudraten wie 115200 (maximal mit dem seriellen Monitor erreichbar), 250000 oder 500000 Baud (mit typischen Terminalprogrammen erreichbar) sind hilfreich, die Datenübertragungszeit kurz zu halten. Viele Terminalprogramme haben sogar direkt eine "Log to File" Funktion.

Wenn Du kein Terminalprogramm mit Log-To-File-Funktion verwendest, sondern nur den Seriellen Monitor, kannst Du auf dem PC die Daten problemlos aus dem Seriellen Monitor in die Zwischenablage kopieren, von dort in einem Texteditor einfügen und als TXT/CSV Textdatei abspeichern.

Alles klar, das hilft schonmal ein gutes Stück weiter. Die vorhandenen Log Dateien einfach zu kopieren wäre zwar einfacher aber der Umweg über ein Terminalprogramm ist auch noch erträglich.

Danke und Grüße