Forum: Mikrocontroller und Digitale Elektronik SD Karte doppelt auslesen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Johnny S. (sgt_johnny)


Bewertung
0 lesenswert
nicht lesenswert
Folgendes Problem:

Eine Platine für Datenerfassung soll in ein IP68 spezifiziertes Gehäuse 
verbaut werden. Am Gehäuse ist ein USB Anschluss sowie eine 
Folientastatur an der aktuell noch 1xTaster in der Matrix, sowie 
1xTaster als eigenständiges Elememt (1 fach), beides Schliesser.

Über den USB-Anschluss soll es möglich sein, die SD Karte des der 
Datenerfassung auszulesen sowie per virtuellen Serial-Port direkt Daten 
am PC zu empfangen.

Generell wäre es sicher möglich einen USB-Hub Chip zu verbauen. Dann 
könnte man an den einen Hub-Port einen FT232 anschliessen, und der 
andere bedient die SD Karte. Will man die Karte auslesen, kann man ja 
mit dem Taster die Datenerfassung stoppen (SPI-Bus deaktivieren).

Die Karte muss direkt angesteuert werden können, nicht eine Rücklesung 
über das System z.b. Serial-Port.  Da die Datenmengen sicherlich grösser 
werden können, und man dann ja noch eine PC-Software benötigt.

Was benötigt es an Hardware um eine SD-Karte auszulesen?

: Verschoben durch Moderator
von abc.def (Gast)


Bewertung
0 lesenswert
nicht lesenswert
??? nix capito
Ist die Datenerfassung ein USB-Host?
Soll die SD von zwei Controllern ausgelesen werden?
Ist es eine SD oder SD-HC oder SD-XC (sind elektrisch voll 
unterschiedlich obwohl gleiche Gehäuseform)
Du hast viel erklärt aber nichts, was mich das Problem erfassen läßt.

von Rufus Τ. F. (rufus) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Johnny S. schrieb:
> Was benötigt es an Hardware um eine SD-Karte auszulesen?

Das, was in einem normalen USB-Kartenleser verbaut ist. Dann aber 
brauchst Du noch einiges an Umschalter-/Multiplexerlogik, um 
alternierend von Deinem µC via SPI und dem USB-SD-Karten-Controller 
umzuschalten.

Wenn Dein µC selbst ein USB-Device wäre (und also kein FT232 verwendet 
wird, sondern z.B. CDC im µC selbst), dann könntest Du ein "dual 
function device" implementieren, d.h. Dein µC verhält sich sowohl wie 
ein CDC (für die serielle Kommunikation) als auch wie ein MSD ("mass 
storage device") und stellt darüber die Daten der SD-Karte zur 
Verfügung.

Um Konflikte bei der Ansteuerung der SD-Karte auszuschließen, muss auch 
hier Dein Taster/Schalter zum Deaktivieren der Datenerfassung eingesetzt 
werden, und Dein µC simuliert das "karten-einsetz-Event" gegenüber dem 
PC, wenn der Taster betätigt wird und wirft die Karte virtuell wieder 
aus, wenn der Taster erneut betätigt wird oder das USB-Kabel abgezogen 
wird.

von R. R. (elec-lisper)


Bewertung
0 lesenswert
nicht lesenswert
abc.def schrieb:
> Ist es eine SD oder SD-HC oder SD-XC (sind elektrisch voll
> unterschiedlich obwohl gleiche Gehäuseform)

Ich dachte die sind elektrisch vollkommen gleich, aber 
software-technisch
unterschiedlich (u.A. anderes Dateisystem, Adressierung und so).
Oder brennt einem der SD(nicht HC/XC)-Kartenleser weg,
wenn man anstatt einer SD-Karte eine SD-HC reinsteckt?

von Thomas W. (diddl)


Bewertung
0 lesenswert
nicht lesenswert
Du möchtest dein Gerät per USB Kabel anschliessen, und zugleich einen SD 
Kartenreader und eine serielle COM Schnittstelle sehen?


Das geht mit nur EINEM USB Port an einem USB Controller (zb. Mega32U4).


Es ist nur eine Frage der Software, wie der USB Stack implementiert 
wird.

von Marc V. (Firma: Vescomp) (logarithmus)


Bewertung
0 lesenswert
nicht lesenswert
Johnny S. schrieb:
> verbaut werden. Am Gehäuse ist ein USB Anschluss sowie eine
> Folientastatur an der aktuell noch 1xTaster in der Matrix, sowie
> 1xTaster als eigenständiges Elememt (1 fach), beides Schliesser.

 Und weiter ?
 USB Anschluss und Tastatur sagt erstmal gar nichts.
 Was ist daran angeschlossen, wenn überhaupt ?

> Die Karte muss direkt angesteuert
 Über den USB-Port ?

Robin R. schrieb:
> Oder brennt einem der SD(nicht HC/XC)-Kartenleser weg,
> wenn man anstatt einer SD-Karte eine SD-HC reinsteckt?

 LOL.

von Johnny S. (sgt_johnny)


Bewertung
0 lesenswert
nicht lesenswert
abc.def schrieb:
> ??? nix capito
> Ist die Datenerfassung ein USB-Host?
> Soll die SD von zwei Controllern ausgelesen werden?
> Ist es eine SD oder SD-HC oder SD-XC (sind elektrisch voll
> unterschiedlich obwohl gleiche Gehäuseform)
> Du hast viel erklärt aber nichts, was mich das Problem erfassen läßt.

Nein, die Datenerfassung hat einen UART Ausgang, der via FT232 auf einen 
USB-Anschluss geht

SD Karte (2Gb) oder micro-SD Karte

Ja die SD soll von zwei Controllern ausgelesen werden, aber nicht 
gleichzeitig




Rufus Τ. F. schrieb:
> Johnny S. schrieb:
>> Was benötigt es an Hardware um eine SD-Karte auszulesen?
>
> Das, was in einem normalen USB-Kartenleser verbaut ist. Dann aber
> brauchst Du noch einiges an Umschalter-/Multiplexerlogik, um
> alternierend von Deinem µC via SPI und dem USB-SD-Karten-Controller
> umzuschalten.
>
> Wenn Dein µC selbst ein USB-Device wäre (und also kein FT232 verwendet
> wird, sondern z.B. CDC im µC selbst), dann könntest Du ein "dual
> function device" implementieren, d.h. Dein µC verhält sich sowohl wie
> ein CDC (für die serielle Kommunikation) als auch wie ein MSD ("mass
> storage device") und stellt darüber die Daten der SD-Karte zur
> Verfügung.
>
> Um Konflikte bei der Ansteuerung der SD-Karte auszuschließen, muss auch
> hier Dein Taster/Schalter zum Deaktivieren der Datenerfassung eingesetzt
> werden, und Dein µC simuliert das "karten-einsetz-Event" gegenüber dem
> PC, wenn der Taster betätigt wird und wirft die Karte virtuell wieder
> aus, wenn der Taster erneut betätigt wird oder das USB-Kabel abgezogen
> wird.

Der uC soll eben nicht die Daten bereitstellen, gewünscht ist das 
verhalten wie wenn eine Karte an einem PC in einen Leser gesteckt wird, 
also als mass storage device

Wieso braucht es einen Umschalter?
Man kann doch per Tastendruck die SPI Kommunikation am uC deaktivieren, 
und dann die exterene Leseelektronik aktivieren, oder nicht?

Grundsätzlich soll hier das "herausnehmen der Karte aus dem einen Leser, 
und einstecken in dem anderen Leser wieder einstecken" elektronisch 
gelöst sein.
Theoretisch wäre es auch möglich die Betriebspannung der Datenerfassung 
zu entfernen, und dann den Karten-Lese Teil bus-powered zu betreibe. Ist 
aber eher eine Würg-Lösung

von Manfred (Gast)


Bewertung
0 lesenswert
nicht lesenswert
abc.def schrieb:
> Ist es eine SD oder SD-HC oder SD-XC (sind elektrisch voll
> unterschiedlich obwohl gleiche Gehäuseform)
Sind sie nicht, sie unterscheiden sich im Aufbau der Datenstruktur.
http://kb-de.sandisk.com/app/answers/detail/a_id/8317/~/sd%2Fsdhc%2Fsdxc-spezifikationen-und-kompatibilit%C3%A4ten

Robin R. schrieb:
> Oder brennt einem der SD(nicht HC/XC)-Kartenleser weg,
> wenn man anstatt einer SD-Karte eine SD-HC reinsteckt?
Hier ist bislang nichts abgebrannt, sehrwohl gab es zerstörte Daten, 
wenn Adressierung und Filesystem nicht passen. Gemein ist, dass das u.U. 
nicht sofort erkennbar wird.

von Marc V. (Firma: Vescomp) (logarithmus)


Bewertung
0 lesenswert
nicht lesenswert
Johnny S. schrieb:
> Der uC soll eben nicht die Daten bereitstellen, gewünscht ist das
> verhalten wie wenn eine Karte an einem PC in einen Leser gesteckt wird,
> also als mass storage device

 LOL.
 Und der Treiber wird von wem geschrieben ?

 Lass es sein, du hast nicht nur zu wenig Ahnung davon, du hast
 überhaupt keine Ahnung.

von abc.def (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Robin R. schrieb:
> Oder brennt einem der SD(nicht HC/XC)-Kartenleser weg,

aber, so nicht gleich.
Die Kartenleser für PC können meist alles. Aber die Datenleitungen haben 
andere Bedeutung. An einem AVR über Standard-SPI bekommt man nur <= 2GB 
zum Laufen.
Da der TO aber recht neblige Angaben macht gibt es sehr viele 
Möglichkeiten es zum Nichtfunktionieren zu bekommen.

Johnny S. schrieb:
> Man kann doch per Tastendruck die SPI Kommunikation am uC deaktivieren,
> und dann die exterene Leseelektronik aktivieren, oder nicht?

Natürlich hast Du damit die Lösung. Aber wir nicht, denn wir wissen ja 
nicht viel über Deine Datenerfassung und so.
Vielleicht ist es über einen vielpoligen Umschalter lösbar, eventuell 
auch Analogschalter / MUX wenn man die Datenrichtung beachtet. Die 
Datenerfassung hat dann aber zeitweise keinen Zugriff bis der Zugriff 
(manuell?) wiederhergestellt wird. Das ist bei geöffneten Files aber 
extrem ungünstig.
Eventuell läßt sich ein AVR programmieren, daß er an 2 Schnittstellen 
SD-Karten emuliert, und an einer 3. Schnittstelle selbst die Karte 
angeschlossen hält. Vorsicht, das ist dann ein Mammut-Projekt mit 
ungewissem Ausgang.
Ich denke, die Lösung ist viel einfacher, aber mangels Detailinfo kann 
ich sie nicht erkennen.

von Johnny S. (sgt_johnny)


Bewertung
0 lesenswert
nicht lesenswert
Marc V. schrieb:
> Johnny S. schrieb:
>> Der uC soll eben nicht die Daten bereitstellen, gewünscht ist das
>> verhalten wie wenn eine Karte an einem PC in einen Leser gesteckt wird,
>> also als mass storage device
>
>  LOL.
>  Und der Treiber wird von wem geschrieben ?

Sowas muss es doch fertig geben? Es schreibt ja auch niemand mehr einen 
Treiber für einen FT232, da gibts den Treiber fertig.

Es wird doch sicher ein fertiges Bautei als SD-Kartenleser geben? Oder 
schreibt jeder billig-Kartenleser hersteller einen eigenen Treiber. Wohl 
kaum.  Für alle meine "USB-Kartenleser" hab ich nie einen Treiber 
installieren müssen. (Windows Standarttreiber).




abc.def schrieb:

> Johnny S. schrieb:
>> Man kann doch per Tastendruck die SPI Kommunikation am uC deaktivieren,
>> und dann die exterene Leseelektronik aktivieren, oder nicht?
>
> Natürlich hast Du damit die Lösung. Aber wir nicht, denn wir wissen ja
> nicht viel über Deine Datenerfassung und so.
> Vielleicht ist es über einen vielpoligen Umschalter lösbar, eventuell
> auch Analogschalter / MUX wenn man die Datenrichtung beachtet.
> Eventuell läßt sich ein AVR programmieren, daß er an 2 Schnittstellen
> SD-Karten emuliert, und an einer 3. Schnittstelle selbst die Karte
> angeschlossen hält. Vorsicht, das ist dann ein Mammut-Projekt mit
> ungewissem Ausgang.


Ich verstehne den Umschalter immernoch nicht?

Mein Plan war wie folgt:
Tastendruck beended die Kommunikation des uC mit der Karte (SPI 
disablen)
Ist die SPI Kommunikation beended, wird ein Ausgang gesetz, welcher den 
"PC-Kartenleserteil" aktiviert. Dann kann die Karte am PC ausgelesen 
werden... wieso braucht es da einen vielpoligen umschalter?

Es ging mir hauptsächlich darum, was es an Hardware benötigt um eine SD 
Karte per USB als Mass Storage auszulesen.

von Marc V. (Firma: Vescomp) (logarithmus)


Bewertung
0 lesenswert
nicht lesenswert
Johnny S. schrieb:
> Sowas muss es doch fertig geben? Es schreibt ja auch niemand mehr einen
> Treiber für einen FT232, da gibts den Treiber fertig.

 FT232 ist aber kein mass storage device.

Rufus Τ. F. schrieb:
> Wenn Dein µC selbst ein USB-Device wäre (und also kein FT232 verwendet
> wird, sondern z.B. CDC im µC selbst), dann könntest Du ein "dual
> function device" implementieren, d.h. Dein µC verhält sich sowohl wie
> ein CDC (für die serielle Kommunikation) als auch wie ein MSD ("mass
> storage device") und stellt darüber die Daten der SD-Karte zur
> Verfügung.

 AT90USB oder so ähnlich...

: Bearbeitet durch User
von Falk B. (falk)


Bewertung
0 lesenswert
nicht lesenswert
@ abc.def (Gast)

>> Oder brennt einem der SD(nicht HC/XC)-Kartenleser weg,

>aber, so nicht gleich.
>An einem AVR über Standard-SPI bekommt man nur <= 2GB zum Laufen.

Zum Glück wußte ich das nicht und hab schon mehrere SD-Karten bis 8GB am 
AVR mit dem VORZÜGLICHEN FATfs von Elm Chan zum Laufen gebracht. Ich bin 
mir auch relativ sicher, daß das bis 32 GB geht, hab es aber mangels 
Bedarf und 32 GB SD-Karte nie getestet.

von Frank K. (fchk)


Bewertung
1 lesenswert
nicht lesenswert
Johnny S. schrieb:

> Der uC soll eben nicht die Daten bereitstellen, gewünscht ist das
> verhalten wie wenn eine Karte an einem PC in einen Leser gesteckt wird,
> also als mass storage device
>
> Wieso braucht es einen Umschalter?
> Man kann doch per Tastendruck die SPI Kommunikation am uC deaktivieren,
> und dann die exterene Leseelektronik aktivieren, oder nicht?

Nein. SD-Karten werden normalerweise NICHT per SPI angesteuert, sondern 
per MCI. Nur so kann man höhere Taktraten und den 4-Bit Modus nutzen. 
Alle Kartenleser-Chips nutzen MCI deswegen.

Man kann SD/MMC-Karten per Befehl in den SPI-Modus schalten, aber das 
zurückschalten geht nur durch Power-Off der Karte, d.h. durch Abschalten 
aller Signale und dann der Versorgungsspannung.

Du solltest Dir erstmal die SD-Karten-Spezifikation herunterladen, lesen 
und verstehen. Dann verstehst Du, dass der Wunsch Deines Auftraggebers 
Murks ist.

Die vernünftige Lösung wäre ein schneller Controller mit MCI-Interface 
und USB 2.0 High-Speed Device, der die Karte nicht als Mass Storage, 
sondern als MTP-Device bereit stellt. Damit läuft die Kommunikation 
nicht blockweise, sondern dateiweise, und es entfällt das Umschalten der 
Karte, weil das Filesystem im Controller läuft und nicht im PC. Dieses 
USB-Protokoll wird in MP3-Playern, Kameras, allen Android-Smartphones 
etc genutzt, um Dateien auszutauschen. Windows und OSX können damit 
direkt so umgehen, und auch für Linux gibt es passende Software.

fchk

PS: Ein passender Controller wäre zB der STM32F405RG.

von Rufus Τ. F. (rufus) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Johnny S. schrieb:
> Der uC soll eben nicht die Daten bereitstellen, gewünscht ist das
> verhalten wie wenn eine Karte an einem PC in einen Leser gesteckt wird,
> also als mass storage device

Lies doch bitte nochmal, was ich geschrieben habe.  Du hast die 
wesentliche Passage sogar zitiert.

von Johnny S. (sgt_johnny)


Bewertung
0 lesenswert
nicht lesenswert
Frank K. schrieb:
> Nein. SD-Karten werden normalerweise NICHT per SPI angesteuert, sondern
> per MCI. Nur so kann man höhere Taktraten und den 4-Bit Modus nutzen.
> Alle Kartenleser-Chips nutzen MCI deswegen.
>
> Man kann SD/MMC-Karten per Befehl in den SPI-Modus schalten, aber das
> zurückschalten geht nur durch Power-Off der Karte, d.h. durch Abschalten
> aller Signale und dann der Versorgungsspannung.

Gut das war mir nicht bekannt. Dann müsste ich es wohl über die 
abschaltung der Versorgungsspannung lösen.




> Du solltest Dir erstmal die SD-Karten-Spezifikation herunterladen, lesen
> und verstehen. Dann verstehst Du, dass der Wunsch Deines Auftraggebers
> Murks ist.

Vieleicht war der Wunsch nicht klar formuliert. Es geht um folgendes.

Bei einem standart 0815 Datenlogger wird eine Karte reingedrückt, und 
wenn man auslesen will, baut man die Karte aus und steckt Sie in einen 
USB-SD Leser.

In meiner Anwendung ist der Logger in einem IP68 und verschraubten 
Gehäuse verbaut. Das würde bedeuten, man müsste jedesmal das Gehäuse 
aufschrauben und danach wider dicht zusammensetzen, was man nicht am 
Standort machen sollte. Wenn man nun per ein oder mehreren Tastendrücken 
die Karte per USB-Kabel auslesen kann ist das Ziel erreicht.

Anfangs war die Idee einfach ein fertiges USB-SD Modul zu verbauen, 
dieses BUS-Powered zu betreiben, wenn die Betriebsspannung des Loggers 
entfernt wurde (verriegelung mit printrelais).
Nun wurde aber noch ein Serieller Port gefordert. Und zwei USB-Buchsen 
montieren ist auch mist.

von Theor (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Da sind die Leute immer so unwillig und werden verstimmt, wenn man nach 
Anlass, Sinn und Zweck einer "Lösung" fragt, bei der jetzt nur noch ein 
"kleines Detail" fehlt, das es doch geben "muss". :-)

von Frank K. (fchk)


Bewertung
0 lesenswert
nicht lesenswert
Johnny S. schrieb:

>> Man kann SD/MMC-Karten per Befehl in den SPI-Modus schalten, aber das
>> zurückschalten geht nur durch Power-Off der Karte, d.h. durch Abschalten
>> aller Signale und dann der Versorgungsspannung.
>
> Gut das war mir nicht bekannt. Dann müsste ich es wohl über die
> abschaltung der Versorgungsspannung lösen.

Das alleine reicht nicht.

Du brauchst
1. zwei schnelle Busswitches wie zB 74CBTLV3861, die die ganzen Signale 
zur Karte (D0-D3, CMD, CLK) plus !CD (Card Detect) (wichtig!) schalten.

2. einen PMOS für die Versorgungsspannung der Karte der für mindestens 
250mA gut ist (so viel darf die nämlich im Dauerbetrieb ziehen!), zB 
Si1317DL

3. einen Microcontroller für das Umschalttiming.

Du musst in dieser Reihenfolge
1. !CD beim ersten Gerät wegnehmen
2. ersten Busswitch abschalten
3. ein paar ms warten
4. Versorgungsspannung der Karte wegnehmen
5. ein paar 100ms bis 1s warten - die Karte muss sicher komplett aus 
sein.
6. Versorgungsspannung der Karte wieder anschalten
7. ein paar ms warten
8. zweiten Busswitch anschalten
9. !CD beim zweiten Gerät anschalten

Bedenke, dass die Geräte die SD-Karte mit bis zu 25 MHz im Standardmodus 
betreiben dürfen, in schnelleren Modi bis zu 104 MHz, je nachdem, was 
die Karte kann. Die von mir ausgesuchten Busswitche sind schnell genug, 
aber die Verkabelung muss für diese Frequenzen geeignet sein und minimal 
kurz sein, möglichst nur wenige cm. Nicht mit Ground sparen!

Die Signalleitungen an einem SD-Slot sind mit Pull-Ups versehen, die 
gemäß Standard im Bereich 10..50kΩ liegen. Dabei hat CMD manchmal einen 
etwas niederohmigeren Pullup als die anderen Leitungen. Es kann Dir 
passieren, dass Du die Pullups auf den Geräten entfernen musst und 
hinter den Busswitches direkt an der SD-Karte einfügen musst. Ggf. musst 
Du auch die Widerstandswerte reduzieren.

In der CLK-Leitung eines SD-Slots ist meist ein Serienwiderstand. Du 
musst schauen, ob Du hinter den Busswitches am SD-Karten-Sockel auch 
noch einen brauchst (so 10...33Ω). Sieh einen vor - 0Ω kannst Du da 
immer noch reinsetzen.

Du wirst nicht umhin kommen, beide Geräte zu zerlegen und die SD-Slots 
sauber zu entfernen, allein schon wegen der !CD-Mikroswitche, die Du mit 
Deinem Microcontroller nachbilden musst. Und um die Kabel zum Umschalter 
anzulöten.

Du siehst, dass das kein geringer Aufwand ist.

>> Du solltest Dir erstmal die SD-Karten-Spezifikation herunterladen, lesen
>> und verstehen. Dann verstehst Du, dass der Wunsch Deines Auftraggebers
>> Murks ist.
>
> Vieleicht war der Wunsch nicht klar formuliert. Es geht um folgendes.

Ja, das hättest DU alles im ersten Post schreiben müssen.

> Anfangs war die Idee einfach ein fertiges USB-SD Modul zu verbauen,

ja, das geht. Musst Du eben auch zerlegen und modifizieren.

fchk

von Marc V. (Firma: Vescomp) (logarithmus)


Bewertung
0 lesenswert
nicht lesenswert
Johnny S. schrieb:
> Anfangs war die Idee einfach ein fertiges USB-SD Modul zu verbauen,
> dieses BUS-Powered zu betreiben, wenn die Betriebsspannung des Loggers
> entfernt wurde (verriegelung mit printrelais).

 Hoffe nur, dass der USB-Stecker auch IP68 ist.
 Es gibt auch IP68-Steckverbinder, da kann man vieles miteinander
 verbinden, z.B. SD-Card Modul in getrenntem Gehäuse mit Logger.

 Manche Leute (Faulheit oder IQ ?) würden da trotzdem den uC die Daten
 per USB mit 2Mbps rausjagen lassen. Dauert zwar einige Zeit, aber es
 ist (für mich jedenfalls) viel einfacher auf dem PC ein kleines Program
 zu schreiben, welches die empfangenen Daten direkt in ein File
 reinschreibt, als dieser Murks.

 Und selbstverständlich gibt es nachher kein Unterschied ob der PC
 selbst diese Datei kreiert hat oder von der SD kopiert hat - wozu dann
 der ganze Aufwand ?

von Frank K. (fchk)


Bewertung
0 lesenswert
nicht lesenswert
Frank K. schrieb:

> 1. zwei schnelle Busswitches wie zB 74CBTLV3861, die die ganzen Signale
> zur Karte (D0-D3, CMD, CLK) plus !CD (Card Detect) (wichtig!) schalten.

Du kannst auch 74CBTLV3245A nehmen.

fchk

von Marc V. (Firma: Vescomp) (logarithmus)


Bewertung
0 lesenswert
nicht lesenswert
Marc V. schrieb:
> Und selbstverständlich gibt es nachher kein Unterschied ob der PC
>  selbst diese Datei kreiert hat oder von der SD kopiert hat - wozu dann
>  der ganze Aufwand ?


 Und selbstverständlich muss dem uC (Logger) irgendwie mitgeteilt
 werden, dass die Daten gelesen worden sind, es muss also irgendein
 Program dafür schon existieren - was versuchst du da überhaupt
 kaputtzumachen ?

von Johnny S. (sgt_johnny)


Bewertung
0 lesenswert
nicht lesenswert
Marc V. schrieb:
>  Manche Leute (Faulheit oder IQ ?) würden da trotzdem den uC die Daten
>  per USB mit 2Mbps rausjagen lassen. Dauert zwar einige Zeit, aber es
>  ist (für mich jedenfalls) viel einfacher auf dem PC ein kleines Program
>  zu schreiben, welches die empfangenen Daten direkt in ein File
>  reinschreibt, als dieser Murks.
>
>  Und selbstverständlich gibt es nachher kein Unterschied ob der PC
>  selbst diese Datei kreiert hat oder von der SD kopiert hat - wozu dann
>  der ganze Aufwand ?

Wird ein PC Programm benötigt, muss dieses gepflegt werden und für 
zukünftige Betriebssysteme aktuell gehalten werden. Das generiert 
Aufwand.

Das kopieren einer CSV Datei von einer SD-Karte sollte jedes 
Betriebssystem von Grund auf können. Ebenfalls braucht man dann nichts 
installieren.

von Frank K. (fchk)


Bewertung
0 lesenswert
nicht lesenswert
Johnny S. schrieb:

> Das kopieren einer CSV Datei von einer SD-Karte sollte jedes
> Betriebssystem von Grund auf können. Ebenfalls braucht man dann nichts
> installieren.

Das wäre mit MTP auch gegeben. Kennt halt nur niemand.

Schau in die USB Spec.

fchk

von Marc V. (Firma: Vescomp) (logarithmus)


Bewertung
0 lesenswert
nicht lesenswert
Johnny S. schrieb:
> Wird ein PC Programm benötigt, muss dieses gepflegt werden und für
> zukünftige Betriebssysteme aktuell gehalten werden. Das generiert
> Aufwand.

 Nein.
 Ein Program welches nur ein virtuelles ComPort benutzt, läuft ohne
 Probleme auf jedem Betriebssystem.

> Das kopieren einer CSV Datei von einer SD-Karte sollte jedes
> Betriebssystem von Grund auf können. Ebenfalls braucht man dann nichts
> installieren.

 Ja, nur muss man die Karte aber mit irgendetwas auslesen und mir
 scheint es, als ob es genau da bei dir irgendwie nicht ganz klappt ;)

 Übrigens, wie wird dem Logger mitgeteilt, dass die Daten ausgelesen
 sind ?

: Bearbeitet durch User
von Arc N. (arc)


Bewertung
0 lesenswert
nicht lesenswert
Möglichkeiten wurden ja schon genannt, fertige ICs gibt's auch z.B.
MAX14502 Hi-Speed USB-to-SD Card Readers with Bypass d.h. das IC 
arbeitet entweder als Kartenleser oder lässt die Signale zum bisherigen 
Controller durch
https://www.maximintegrated.com/en/products/interface/MAX14502.html

von Johnny S. (sgt_johnny)


Bewertung
0 lesenswert
nicht lesenswert
Arc N. schrieb:
> Möglichkeiten wurden ja schon genannt, fertige ICs gibt's auch z.B.
> MAX14502 Hi-Speed USB-to-SD Card Readers with Bypass d.h. das IC
> arbeitet entweder als Kartenleser oder lässt die Signale zum bisherigen
> Controller durch
> https://www.maximintegrated.com/en/products/interface/MAX14502.html

Das klingt ja vielversprechend. Leider nicht empfohlen für neue Designs, 
aber ich werde bei Maxim mal ein nachfolge-Sample anfordern


Marc V. schrieb:
> Johnny S. schrieb:
>> Wird ein PC Programm benötigt, muss dieses gepflegt werden und für
>> zukünftige Betriebssysteme aktuell gehalten werden. Das generiert
>> Aufwand.
>
>  Nein.
>  Ein Program welches nur ein virtuelles ComPort benutzt, läuft ohne
>  Probleme auf jedem Betriebssystem.

Das wage ich zu bezweifeln!
Um unter windows auf Com-Ports zuzugreifen werden vermutlich dll 
benötigt, auf Apple wohl kaum.
Und auf Apple kann man auch nicht ohne Umweg eine .exe starten.

von Jim M. (turboj)


Bewertung
0 lesenswert
nicht lesenswert
Johnny S. schrieb:
> Um unter windows auf Com-Ports zuzugreifen werden vermutlich dll
> benötigt

Falsch. Nix DLL, einfach CreateFile() benutzen:

https://msdn.microsoft.com/de-de/library/windows/desktop/aa363201(v=vs.85).aspx

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]
  • [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.