Forum: Mikrocontroller und Digitale Elektronik STM32F103 USB MASS STORAGE SDCARD UND FATFS


von andreas (Gast)


Angehängte Dateien:

Lesenswert?

hallo,
ich Versuche seit ein paar tagen das Beispiel USB MASS STORAGE SDCARD 
zusammen mit CHan's FATFS zum laufen zubekommen leider funktioniert das 
nicht.
Meine Vermutung ist das der Fehler irgendwo in der "sdio_sd.h" liegt.
im Anhang hab ich die 2 Einzelbeispiele FATFS und Mass Storage SDCARD.
Einzeln laufen die Beispiele Perfekt.
vielleicht könnte mir einer ein tipp geben oder Weiterhelfen.

von Pit (Gast)


Lesenswert?

andreas schrieb:
> leider funktioniert das nicht

Bitte etwas genauer.

andreas schrieb:
> Meine Vermutung ist das der Fehler irgendwo in der "sdio_sd.h" liegt.

Auch das kann man sicher noch besser eingrenzen.

von Andreas (Gast)


Lesenswert?

Pit schrieb:
> andreas schrieb:
> leider funktioniert das nicht
>
> Bitte etwas genauer.

Ich nehme das Projekt MASS STORAGE SDIO dann kann ich pet USB auf die SD 
CARD zugreifen vom PC, füge ich nun die Dateien von Chans FATFS hinzu 
geht das USB noch aber das FATFS geht dann nicht mehr ich kann auch 
keine Biler mrhr auf dem Didplay anzeigen.

Einzeln lauf die Projekte.


>
> andreas schrieb:
> Meine Vermutung ist das der Fehler irgendwo in der "sdio_sd.h" liegt.
>
> Auch das kann man sicher noch besser eingrenzen.

von Phantomix X. (phantomix)


Lesenswert?

Bitte sei dir im Klaren, dass es eine sehr schlechte Idee ist, Fatfs und 
USB gleichzeitig zu benutzen. Sowohl dein PC als auch Fatfs sind mit der 
Annahme programmiert, das Laufwerk "für sich allein" zu haben. Schreiben 
beide etwas aufs Laufwerk, kann und wird das zu Dateisystemfehlern und 
kaputten Dateien führen.
Edith: Auch wenn nur einer von beiden etwas schreibt, führt das aufgrund 
von Caching zu Lesefehlern auf der anderen Seite. Beides gleichzeitig 
ist nur sicher möglich, wenn beide "nur lesend" sind.

Ich habe hier ein Projekt, bei dem auch sowohl USB als auch Fatfs zum 
Einsatz kommen. Die Software wechselt zwischen beiden hin und her je 
nach Bedarf.

Was meinst du mit "geht nicht mehr"? Gib doch bitte eine genaue 
Fehlerbeschreibung, welche Funktion welchen Fehlerwert zurückliefert.

von Andreas (Gast)


Lesenswert?

hallo phantomix,

ich habe jetz das USB MASS STORAGE SDCARD
zusammen mit CHan's FATFS zum laufen zubekommen aber das geht zusammen 
nicht.
in dem USB MASS STORAGE SDCARD Projekt und zwar in der Datei sdio_sd.c
wird der *readbuff und *writebuff mit u8 Deklariert,
1
SD_Error SD_ReadBlock(u32 addr, u8 *readbuff, u16 BlockSize)
2
SD_Error SD_ReadMultiBlocks(u32 addr, u8 *readbuff, u16 BlockSize, u32 NumberOfBlocks)
3
4
SD_Error SD_WriteBlock(u32 addr, u8 *writebuff, u16 BlockSize)
5
SD_Error SD_WriteMultiBlocks(u32 addr, u8 *writebuff, u16 BlockSize, u32 NumberOfBlocks)

und bei dem Projekt FATFS_SDIO wird der *readbuff und *writebuff mit u32 
Deklariert,
1
SD_Error SD_ReadBlock(u32 *readbuff,u32 addr,  u16 BlockSize)
2
SD_Error SD_ReadMultiBlocks(u32 *readbuff,u32 addr,  u16 BlockSize, u32 NumberOfBlocks)
3
4
SD_Error SD_WriteBlock(u32 *writebuff, u32 addr, u16 BlockSize)
5
SD_Error SD_WriteMultiBlocks(u32 *writebuff, u32 addr, u16 BlockSize, u32 NumberOfBlocks)

ich wollte das so machen das wenn das Board startet zuerst das CHans 
FATFS Initialisiert wird und ich dann spähter per taster dann das USB 
wobei das CHan FATFS wieder deinitialisiert wird und nur das USB 
läuft,damt ich mir die Daten auf den Pc laden kann sonnst muss ich ja 
immer die SD-CARD rausnehmen.
mfg

von Andreas (Gast)


Lesenswert?

Da kann mir scheinbar keiner weiterhelfen
wie macht ihr das.

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.