Forum: Mikrocontroller und Digitale Elektronik MMC/SD --> Kann Daten im MBR nicht korrekt einlesen (MSB-LSB


von Andreas Häusler (Gast)


Lesenswert?

Hi

Habe mich schon seit Tagen mit der FAT auf MMC's herumgeschlagen.
Dabei waren mir die Sourcen von Uli, Stefan usw. und die Einträge in
diesem Forum eine grosse Hilfe. Herzlichen Dank an alle...

Konnte bis jetzt die CSD / CID Daten problemlos auslesen und bin jetzt
am lesen des MBR und VBR. Dabei habei ich folgendes festgestellt:
Die Daten in meinem 512Byte Buffer sind alle nach dem Einlesen 1:1
vorhanden. (wie ich mit Winhex auch sehe) Dabei ist mir aber
aufgefallen, dass bei den einzelnen Daten das LSB und MSB vertauscht
ist(!) Dadurch ist es meiner Meinung nicht möglich, den Buffer einem
Struct zu übergeben wie es im Source von Holger Klabunde gemacht wird.
Ich erhalte aus disem Grund jeweils Variablen, die viel zu gross sind.
Wenn ich die Daten einzeln aus dem Array auslese und verrechne stimmen
die Werte.
Was mache ich falsch???
Ich hoffe sehr, das mir jemand weiterhelfen kann.
Im voraus herzlichen Dank.

Gruss Andy

von Andreas Häusler (Gast)


Lesenswert?

Hallo
Hab noch vergessen zu erwähnen, dass ich den FAT Source auf einen
Renesas H8S/2378 portieren möchte.
Vielleicht wird das ganze beim AVR Compiler intern anders verarbeitet
als bei meinem IAR Compiler. (Big endian / little endian)

Für eine Antwort bin ich wirklich sehr dankbar!

Andy

von Olaf (Gast)


Lesenswert?

Ich selbst kenn dne H8 nicht, aber wenn du mit short/int arbeitest dann
ist deine Vermutung sehr wahrscheinlich richtig. Vermutlich wird
irgendwo Byteweise an aus einem SPI-Register gelesen und dann an eine
16Bit-Variable uebergeben. Da kann es zu problemen kommen.

Olaf

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.