Hallo, eine kurze Frage an euch. Fast alle SD-Karten-Projekte, die ich gefunden habe, basieren auf einem Beschreiben der Sektoren/Blöcke über SPI -> also ganz normal. Wenn man das so macht, ohne ein Dateisystem (z.B. FAT16) zu erzeugen, kann man dann den Inhalt der Karte irgendwie am PC auslesen ? Ich meine erkennt Windows den Inhalt der Karte ? Gibt es dafür irgendwelche Programme zum Auslesen ? Ich frage nur deshalb, weil ich es für ein Projekt brauche. Wenn das nähmlich nicht geht, dann müsste ich die SD-Karte erstmal FAT16 formtieren, um direkt Dateien erzeugen zu können. Windows dürfte diese dann problemlos erkennen, oder ? Das wäre ein erheblich höherer Aufwand, als ohne Dateisystem. MfG Thomas
Mit einem Hex-Editor wie zum Beispiel WinHex dürfte das auslesen funktionieren.
Es gibt da so Leute, welche FAT auf nem Atmel implementiert haben, z. B.: * http://www.robs-projects.com/filelib.html Damit kannst du dann SD-Karten so beschreiben, dass du das ganze auf nem PC auch wieder wie gewohnt auslesen kannst. Habs aber selber noch nie ausprobiert.
Kopieren über die Devicedatei also cp /dev/usbdevice dateiname So sichert man ja auch images von Festplatten und DVDs. Ist unabhängig vom Dateisystem. Eventuell gehts auch mittels dd.
Hallo, ich kann meine SD-Karte mit dem µC auslesen und beschreiben. Wenn ich aber nun den Inhalt an einem Windows Rechner auslesen will, dann kommt immer eine Meldung, dass das Dateisystem unbekannt ist und das ich den Datenträger formatieren soll. Wie habt Ihr das gemeint mit dem Hexeditor ? Oder soll ich die SD-Karte erst in Windows formatieren ? Danke !
Thomas wrote:
> Oder soll ich die SD-Karte erst in Windows formatieren ?
NEIN, dann macht Windoof sie ja platt.
Unter Windoof ist das absolute Kacke, weil Windoof unbedingt alles
selbst in die Hand nimmt. Sprich: kein Dateisystem --> "kaputt" -->
neuformatieren.
Wenn du Zugriff auf ne Linuxkiste hast, mach
1 | # dd if=/dev/sd.. of=inhalt_der_karte_als_rohdaten |
und fertig. Geht auch mit nem bootbaren Linux (Knoppix und Konsorten). Für Windoof gabs mal RAWRITE, damals wars nur für Disketten, obs sich geändert hat, weiß ich nicht. Les selbst: http://www.fdos.org/ripcord/rawrite/
http://mh-nexus.de/hxd/ HxD ist ein Hexeditor und ein Diskeditor. Mit dem geht das. Du kannst Laufwerke im Rohformat öffnen, ohne dass das Dateisystem eine Rolle spielt. Man kann unter Windows aber auch direkt drauf zugreifen. Genau weiss ich nicht mehr, wie es ging ab so ähnlich: Um in C aus einer Datei zu lesen gibt es ja die fopen()... und zum lesen eine andere Funktion. Ein Zeiger zeigt dabei auf die aktuelle Stelle in der Datei. Und wenn man diesen Zeiger/Handle auf 0 setzt, dann liesst man direkt das erste Byte des Laufwerkes.
rotzfrech wrote: > Um in C aus einer Datei zu lesen gibt es ja die fopen()... und zum lesen > eine andere Funktion. Ein Zeiger zeigt dabei auf die aktuelle Stelle in > der Datei. Und wenn man diesen Zeiger/Handle auf 0 setzt, dann liesst > man direkt das erste Byte des Laufwerkes. Was das Handle angeht: Falsch, "0" ist NULL und wird von fopen() zurückgeliefert, wenn was schiefgeht (Fehler). Was den "Zeiger" angeht: Das is kein Zeiger, sondern einfach eine ganze Zahl. "0" bedeutet: Erstes Zeichen der Datei. Unter Linux kann man ohne Weiteres mit "fopen" die Gerätedatei aufmachen und Rohdaten lesen -- kein Thema. Nur Windows hat nunmal keine Geräte-*Dateien*.
Hallo Forum, weiß zufällig jemand, ob man einen einfachen CardReader "schlachten" kann, um daraus den MMC/SD-Karten Slot an einem AVR über SPI zu betreiben? Die Slots kosten neu bei Reichelt zwischen 8€ und 14€. Einfache CardReader bekommt man teilweise billiger... Danke.
Bei CSD gibt es die Slots ab 2,99€. Du kannst natürlich einen Slot auslöten, sollte funktionieren.
@Doing: Geht billiger und einfacher: http://www.it-wns.de/ Hat die Dinger in mehreren Versionen. Gruß Jadeclaw.
Super, danke. Hm, ich scheine blind zu sein. Warum steht im Datenblatt keine Pinbelegung?
Habe letzte Woche einen SMD-SD/MMC-Slot aus einem alten Kartenleser auf Lochraster transplantiert, falls es das ist, was du meinst.
Hallo, Winhex funktioniert top ! Ich kann ohne Dateisystem die Werte auslesen ! PS: Im Datenblatt eines SD-Card Connectors steht keine Pinbelegung, da jede SD-Karte die selbe hat, also sind auch alle Pads normiert, bis auf CARD PRESENT und WRITE PROTECT. Diese werden je nach Hersteller unterschiedlich ausgeführt. Bei Schuricht gibt es exzellente SD-Card Connectors für ca. 1,50€ von 3M !
> Nur Windows hat nunmal keine Geräte-*Dateien*. Im Prinzip doch, denn mit der Win32-API-Funktion CreateFile kann man sowohl physikalische als auch logische Laufwerke ansprechen; als Dateiname ist dann entsprechend \\.\PhysicalDrive0 bzw. \\.\A: zu verwenden. Schreib- und Lesezugriffe sollten dann nur noch auf Sektorgrenzen (also in 512-Byte-Schritten) ausgerichtet durchgeführt werden. Ob die C-Standard-Funktion fopen diese "speziellen" Dateinamen transparent an die darunterliegende Win32-API durchreicht, wird wohl vom verwendeten Compiler abhängen. Details sind in der Dokumentation enthalten http://msdn.microsoft.com/en-us/library/aa363858(VS.85).aspx
Moin, ich nutze um "low-level" also blockweise auf eine SD zuzugreifen das Tool "DiskExplorer for Fat". Probiers doch mal aus! http://www.runtime.org/ Gruss
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.