SD Karte mit STM32H7

OP #7140355
Lesenswert?

Hat hier mal jemand eine SDC mit dem H7 und HAL Code benutzt?
Ich habe lange gebraucht das zum Laufen zu bekommen, das Init hat 
funktioniert und die Karteninfo konnte gelesen werden. Aber Blöcke lesen 
mit oder ohne DMA ging nicht, es wurden keine Interrupts vom SDMMC1 
gefeuert.
Erst nachdem ich das hsd.Init.ClockPowerSave enabled hatte ging es. Habe 
noch nicht nachgesehen warum genau das so ist, vielleicht ist hier auch 
mal jemand darüber gestolpert?
https://github.com/JojoS62/COMPONENT_SDIO/blob/312ced360d7a24b8b0aa6a5f5e3df0b1736be652/TARGET_STM/TARGET_STM32H7/sdio_device.c#L148
Der Code ist noch dirty vom Umbau vom F7. Mit dem integrierten DMA im H7 
SDMMC ist sogar einfacher als für die F7 wenn man nicht die max. 
mögliche Speed der Karten ausreizen möchte. Cache Handling fehlt auch 
noch, habe erstmal mit abgeschaltetem D-Cache getestet.

Wie behandelt man einen Kartenwechsel richtig? Man muss ja wieder einen 
Init ausführen weil sich die SDC Geschwindigkeit geändert haben kann. 
Und dem Filesystem einen Tritt geben weil da ja auch alles ungültig 
geworden ist.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren