Forum: Mikrocontroller und Digitale Elektronik mit µC beschriebener EEPROM über windows auslesen


von bob b. (blobbob)


Lesenswert?

Hallo Forum,

ich möchte diverse anfallende Daten mit einem µC auf einen Speicher 
speichern. Der Speicher soll später mittels Windows ausgelesen werden 
können.
Das ganze soll auch relativ benutzerfreundlich funktionieren, also fällt 
das Rumhandtieren mit einem HexEditor weg.

Die einzige Möglichkeit die mir noch einfällt, um die Daten vom Speicher 
in eine Datei unter Windows zu bekommen, wäre ein filesystem. Das und 
das Schreiben von einem extra Program für Windows wollte ich eigentlich 
vermeiden.
Als Verbindung zum PC schwebt mir im Moment USB vor.

Kennt Ihr noch andere Möglichkeiten um Daten vom µC zu Dateien im PC zu 
bekommen, ohne dass eine Verbindung zwischen beiden zur Zeit des 
Anfallens der Daten besteht?

besten Dank und lG

Bob

von Frank K. (fchk)


Lesenswert?

bob blob schrieb:

> Kennt Ihr noch andere Möglichkeiten um Daten vom µC zu Dateien im PC zu
> bekommen, ohne dass eine Verbindung zwischen beiden zur Zeit des
> Anfallens der Daten besteht?

SD-Karten. Billig, einfach anzusteuern, große Kapazität.

fchk

von bob b. (blobbob)


Lesenswert?

achja, zur Kapazität hab ich nichts gesagt, also es werden wohl nicht 
mehr als 512kb.

Bei SD-Karten fällt aber wieder der Aufwand mit dem filesystem an, oder 
seh ich das falsch?

von Karl H. (kbuchegg)


Lesenswert?

Das siehst du schon richtig.
Allerdings kann man sich da auch mit Krücken behelfen, die dafür sorgen, 
dass man das Filesystem nicht komplett implementieren muss.

Auf einer frisch formatierten SD-Card werden nun mal die Daten in 
aufeinanderfolgenden Sektoren gespeichert, so dass man den ganzen 
Aufwand mit einer FAT-Verwaltung zum Finden von leeren Sektoren nicht 
braucht.
Weiters hat man nur 1 Datei (nämlich seine eigene), sodass die 
Behandlung des Directories auch eher trivial ist.
Und lesen muss man auch nichts können sondern nur Daten schreiben.

von tt4u (Gast)


Lesenswert?

Meine Anwendungen (diverse Datenlogger) haben dazu eine eigene Routine, 
die ich über einen Pin aktiviere, die Daten des EEPROMs werden dann über 
eine RS232 (oder VCOM via USB) zum PC ausgegeben.

von bob b. (blobbob)


Lesenswert?

danke euch erstmal.
Also sehen wir im Moment nur eine Lösung mit einem filesystem? Da 
Windows die Daten bei einer Übertragung über einen vcp oder rs232 auch 
nicht als Datei abspeichert. Oder gibt es diese Option?

von Lukas K. (carrotindustries)


Lesenswert?

Dateisystem ist doch nicht zwingend. Ich bin für einfache Anwendungen, 
wie Datenloggger oder so auch immer ohne Dateisystem gut ausgekommen. Ob 
man am Computer eine Datei oder eine Gerätedatei (hat Windows doch 
hoffentlich auch) liest, ist ziemlich egal.

von Frank (Gast)


Lesenswert?

512kB hat der mc normalerweise sowieso nicht,
also braucht man einen Speicher, warum dann nicht gleich die 
vorgeschlagene SD Card.
Mit dem Verfahren das Karlheinz vorgeschlagen hat braucht man doch gar 
kein Filesystem. Man bestimmt sich einfach am PC die Sektoren auf die 
geschrieben werden soll und das wird dem mc einprogrammiert, fettich

von Reinhard Kern (Gast)


Lesenswert?

Hallo,

früher gab's da verschiedene Protokolle wie X-Modem, Kermit usw., aber 
damit kennt sich heute keiner mehr aus. Zeitgemäss wäre auf dem MC eine 
wwwebsite zu implementieren, dann muss man am PC (oder Tablet oder 
Smartphone oder oder...) nur noch den Downloadbutton drücken.

Gruss Reinhard

von bob b. (blobbob)


Lesenswert?

Das mit der website ist natürlich sehr interessant, und wohl auch 
ziemlich benutzerfreundlich. Aber das würde mich wohl im Moment vor mehr 
Problemen stellen.

Ich danke euch erstmal.

von Peter II (Gast)


Lesenswert?

Luk4s K. schrieb:
> Dateisystem ist doch nicht zwingend. Ich bin für einfache Anwendungen,
> wie Datenloggger oder so auch immer ohne Dateisystem gut ausgekommen. Ob
> man am Computer eine Datei oder eine Gerätedatei (hat Windows doch
> hoffentlich auch) liest, ist ziemlich egal.

ja, windows hat das auch aber es Prüft auch die Rechte und ein normaler 
user darf sotwas nicht. Damit ist es keine schöne Lösung.

von bob b. (blobbob)


Lesenswert?

Hi, da bin ich wieder :),

also ich habe mich entschieden. Es wird wohl ein 64Mb großer 
Flash(SST25VF064C) Speicher, der über SPI angesprochen wird.
Das ganze wird ohne ein standart Filesystem benutzt.

Nun ist das mein erster externer Speicher, den ich beschreiben möchte.
Gibts da irgendwelche sinnvollen "Regeln" an die man sich halten sollte?
Also z.B. Startzeichen/Endzeichen von den Paketen etc. .

Danke & mfG
bob

von Peter II (Gast)


Lesenswert?

bob blob schrieb:
> Nun ist das mein erster externer Speicher, den ich beschreiben möchte.
> Gibts da irgendwelche sinnvollen "Regeln" an die man sich halten sollte?
> Also z.B. Startzeichen/Endzeichen von den Paketen etc. .

ja, die Regeln stehen im Datenblatt vom dem Speicher.

von NopNop (Gast)


Lesenswert?

Und wie liest Du es nun ohne Hex-Editor aus?

von bob b. (blobbob)


Lesenswert?

Peter II schrieb:
> bob blob schrieb:
>> Nun ist das mein erster externer Speicher, den ich beschreiben möchte.
>> Gibts da irgendwelche sinnvollen "Regeln" an die man sich halten sollte?
>> Also z.B. Startzeichen/Endzeichen von den Paketen etc. .
>
> ja, die Regeln stehen im Datenblatt vom dem Speicher.

danke, aber auf solche Antworten kann ich verzichten. Im Datenblatt 
steht u.A. wie ich den Speicher anspreche. Die Frage bezog sich aber 
eher auf das sinnvolle Anordnen der Bits und Bytes, quasi ähnlich wie 
ein filesystem.


NopNop schrieb:
> Und wie liest Du es nun ohne Hex-Editor aus?

wird wohl doch ein extra Programm unter Windows mit einem 
Downloadbutton, und dann wird das ganze am Stück per UART gesendet.

von Patrick (Gast)


Lesenswert?

Ich glaube, Du wirfst da so Einiges durcheinander.

Ein Filesystem macht (natuerlich) nur dann Sinn, wenn das Speichermedium 
direkt mit einem PC verbunden und damit ausgelesen/beschrieben werden 
soll. Mit anderen Worten ist ein Filesystem nur dann sinnvoll, wenn Du 
einen Wechseldatentraeger (SD-Karte) hast und diese Karte auch aus 
Deinem Geraet entnehmen und direkt mit dem PC verbinden willst. In allen 
anderen Faellen kannst Du auf den Datentraegern herumschreiben, wie Du 
lustig bist.

Die Uebertragung vom Mikrocontroller zum PC ist wieder ein ganz anderes 
Thema; z. B. seriell musst Du Dir ein Uebertragungsprotokoll ueberlegen. 
Filesystem gibts hier auch nicht.

Was Du machen koenntest, waere, den Mikrocontroller per USB mit dem PC 
zu verbinden und ihn so zu programmieren, dass er sich gegenueber dem PC 
wie ein Datentraeger (USB-Stick) verhaelt. Dann muss der "USB-Stick" dem 
Rechner gegenueber ein entsprechendes Filesystem emulieren. Das heisst 
jedoch nicht zwangslaeufig, dass die Daten im Mikrocontroller selber 
(bzw. im angebundenen Flash) ebenfalls mit einem Filesystem gespeichert 
werden muessen.

von Patrick (Gast)


Lesenswert?

Nachtrag: Ein Mini-"Filesystem" fuer z. B. ueber einen laengeren 
Zeitraum gesammelte Messdaten (in einer "Datei"): Die ersten z. B. vier 
Bytes im FLASH sind die Laenge der "Datei", danach folgen direkt die 
Daten (die "Datei").

von bob b. (blobbob)


Lesenswert?

Das ich zum senden kein Filesystem sondern ein Frame brauch ist mir 
schon klar, auch dass ich die Daten drauf schreiben kann wie ich lustig 
bin.
Mir gehts halt nur darum, dass ich später evtl. auch einzeln auf 
verschiedene Datensätze zugreifen kann. Das würde dann ja schon eine 
gewisse Struktur auf dem Speicher erfordern.

Die Größe des Pakets an den Anfang zu schreiben ist z.B. ein guter 
Anfang :), danke.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.