Guten Morgen alle zusammen, ich wollte fragen,ob mir jemand hier helfen kann. Komme gerade mit meinem Porjekt einfach nicht mehr weiter. Und zwar habe ich folgendes Problem. Ich habe eine Schaltung/Board gebastelt, welche bestimmte Daten (Uhrzeit,Datum,Stromverbrauch etc.) auf einer SD-Karte abspeichert und üer usb abgerufen werden kann. Nun primär geht es mir um die SD-Karte gerade. Ich benutze einen STM32f103 Microcontroller und programmiere mit Keil. Ich habe bereits die SD-Karten Initialisierung geschrieben und sie funktioniert auch. Also Hardwaretechnisch keine Probleme. Die Sd karte läuft bei mir über ein Transistor, der jedesmal vor der Initialisierung die SD-Karte kurz resettet. Nun wie ich vorher erwähnt habe,lässt sich die SD-KArte vollständig und ohne PRobleme Initialisieren. Mein Problem ist jetzt, dass ich weder Lesen noch Schreiben kann. Der Filepointer den ich erstelle blebt immer gleich NULL. Ich verzweifle da schon langsam dran. Weiß einer von euch vielleicht woran das liegen kann ? Oder hat jemand Tipps ? Danke schonmal im vorraus.
Wie genau hast du denn die SD-Karte angeschlossen? Wiso über einen Transistor? SD-Karten sind sehr empfindlich was die Versorgungsspannung betrifft, würde das alles mal ohne einen Transistor probieren. Woran machst du fest dass die initialisiert ist?
> Die Sd karte läuft bei mir über ein Transistor Schaltplan, bitte. Eine SD will 2,7-3,6 Volt haben, Bipolartransistor ist also ungünstig, MOSFET besser. Da SD Karten kein Reset kennen ist eine Spannungsabschaltung im Fehlerfall oft sinnvoll. > Ich habe bereits die SD-Karten Initialisierung geschrieben und sie > funktioniert auch. Woran merkst Du das? Größe der SD? Wird die Partitionierung und das Filesystem erkannt?
Die Beschaltung kannst du im Bild entnehmen.Habe dann mit den dazugehörigen pins am STM verbunden. Der Power_On pin resetten die sdkarte. Ich habe den Reset eingebaut, weil es öfters vorkam das die SD nicht gelesen werde konnte bzw. diese sich mit dem Programmiergerät hat nicht programmieren lassen (musste kurz abstecken und wieder anstecken). Die Initialsierung bzw. den Programmcode habe ich öfters im Debugmodus durchlaufen lassen und es kam zu keinen Problemen.Zudem habe ich noch eine LED eingebaut, welche Blinkt sobald ein Fehler auftritt (wenn die SD nicht erfolgreich initialisert wurde, Datein nicht geschrieben/gelesen werden können etc.)Wäre die Pinbeschaltung falsch gewesen würde mir das Programm ein Fehler ausgeben (keine Kommunikation) oder es würde den InitPart nicht durchlaufen. EDIT: Bevor ich den Mosfet (im Bild) eingebaut habe, ging das noch. Ich habe es geschafft eine Txt Datei zu erstellen und etwas in die Textdatei zu schreiben. Jedoch danach funktioniert nichts mehr.
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.