Forum: Mikrocontroller und Digitale Elektronik SD Karte hilfe


von Commtel (Gast)


Lesenswert?

ich habe mehere SD Karten mit 256 512 und 1024 MB
und programmiere in assembler

mein problem ist wenn ich den befehl für read über spi schreibe
bekomme ich nur FF zurück also z.b

0x49,0x00,0x00,0x00,0x00,0xFF für read
warte bis karte mit 0x00 antwortet
warte bis karte mit 0xfe antwortet
karte antwortet mit 256 mal FF
eigentlich sollte doch bei adresse 00 der MBR liegen
nur wenn ich die adresse auf 1d200 bei einer 512 mb karte ändere 
erscheind
mein MBR
ähnlich bei einer 64 mb karte dort lag die adresse bei e400 so weit ich 
das jetzt gerade weis.

wie kann ich jetzt die offset oder fehler berechnen
im csd register find ich nix

c.u
commtel


von Uwe (Gast)


Lesenswert?

Hi!
Nein, an Sektor 0 ist der PBR untergebracht.
Suche mal nach Fat-Unterlagen -und im Forum sind auch gute Beiträge 
unterwegs.

MFG Uwe

von commtel (Gast)


Lesenswert?

sorry bin zu blöd komm nicht weiter

von bluebrother (Gast)


Lesenswert?

An Sektor 0 liegt die Partitionstabelle, und in der steht wo deine 
Partition losgeht. Es sei denn du hast die Karte als Super-Floppy 
formatiert, dann kommt an Sektor 0 gleich der erste Sektor der Partition 
und damit gehts mit BPB los. (Wenn du FAT benutzt, was ich jetzt mal 
angenommen habe)

Also: Sektor 0 lesen, Partitionstabelle parsen (geht los bei Offset 
0x1be für die 1. Partition) und damit am richtigen Sektor den MBR der 
Partition finden.

von Commtel (Gast)


Lesenswert?

1000 dank werd s heut abend mal testen bin noch auf der arbeit.
werde dann berichten

c.u
commtel

von commtel (Gast)


Lesenswert?

super hat gefunzt noch mals 1000 dank

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.