STM32 und SD-Karte (FATFS und SPI)
Ich bin mit der Arbeit beginnen mit einer stm32l0 Bord und es war in Ordnung, bis ich hatte einige weitere interessante Funktionen zu nutzen. Ich lese nie die SD-Karte von windows, ich fand die Pins links und begann zu Lesen über SPI, die eine geeignete Lösung für unsere prject (glaube ich).
Aber das Problem liegt in der Programmierung, jedem tutorial finde ich überspringt die Grundlagen. Ich verwendet STM32CubeMX um code zu generieren, mit HAL und FATFS aber ich weiß nicht, wie man zu initialisieren und verwenden Sie dann meine SD-Karte. Ich versuche, fügen Sie code, den ich finden, aber ich kann nicht Debuggen, um dann und es gibt keinen Punkt, nur einfügen jemandes code.
Vielen Dank und sorry für meine Grammatik,
BEARBEITEN :
Ich kam hier nach diesem post : link
Ich bin jetzt versuchen, Zugriff auf eine SDcard mit einem stm32l0-controller. Ich habe empfohlen, um FATFS zu Lesen, dem Gerät, aber was ich verstanden habe ist, dass die Bibliothek benötigt eine Möglichkeit, den Zugriff auf die Daten : SPI. Ich wählte FATFS und SPI2 in STM32CubeMX und importiert das Projekt in Eclipse (ich bin mit HAL und die SW4STM32). Auf der pin-Beschreibung, die ich sah, MISO,CK,MOSI in CubeMX, die auf die pins PB12,PB13,PB14.
Aber in der Haupt-Datei, diese pins werden nie verwendet.
Eine andere Sache, die Angst mich in der post, die ich wissen : die SD-Karte initialisiert werden muss, in einer Weise, die einem nie gehört haben.
Ich weiß nicht, ob Sie brauchen, um die SPI_Init und GPIO_Init Funktionen, ich will diese Nachricht editieren, wenn Sie es brauchen.
Ich passe sowieso in den morgen, weil die post muss so sein, confuzed, mein Hirn brennt, ich bin sorry. Fragen Sie, ob Sie brauchen Präzision auf was auch immer.
Danke !
Sorry das wusste ich nicht. Ich habe hier gepostet, weil ich habe ein ähnliches problem hier, aber der Autor sah, wie er verwaltet, um eine Menge Dinge tun, die mir dabei helfen können, bevor er klebte. Ich finde das Thema und posten Sie es einfach nach !
InformationsquelleAutor Blaitox | 2017-02-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie CubeMx und konfigurieren der SPI-Zugriff auf SD-Karte, die pins sind automatisch so konfiguriert, dass in Ihrem code. Blick auf die Definitionen/Implementierungen der die ersten Funktionen in den generierten main.c.
Wenn Sie noch keine Erfahrung im STM32 und Ihre HAL-Treiber, versuchen Sie zuerst zu verstehen, wie die Dinge stapeln sich.
Der Schnellste Weg, dies zu tun, ist zu versuchen, ein Beispiel.
Alle Ihre CubeMx Firmware-Bibliotheken befinden sich an
C:/Users/UserName/STM32Cube/Repository/STM32Cube_FW_XX
Gehen Sie zu Projekten>Beispiele-Ordner (kann nicht genau - aber die Pfade sind ähnlich) und finden Sie die Beispiele.
Wenn Sie gehen, um Würfel, die in das pinout-Registerkarte, aktivieren Sie die SPI-Peripherie zu sehen, die GPIOs, erhält automatisch in der Paket-Ansicht. Wenn Sie generieren den code, MX_XXXX Methoden konfigurieren Sie die Stifte und den peripheren
Ok danke!!! Ich lese SPI-Beispiele in den Ordner, den Sie gab mir, und ich Verstand, wie zu senden bytes. Aber wissen Sie, wenn ich Sie zu initialisieren, die den gesamten Prozess selbst oder ist es getan mit dem FatFs f_mount Funktion ? Ich bin nicht vertraut mit dem "mount" - Wort, ich weiß also nicht, wie weit es geht. Und in diesem Fall, was der name bedeutet meine Karte haben ? Ich lese manchmal die "0" oder manchmal auch "SD:" Oder muss ich zum senden der 74 Taktzyklen, dann das byte, und verwenden Sie dann f_mount ?
Aktivieren FATFS im Cube-pinout unter der Registerkarte middleware Baum. Dann gehen Sie zur Registerkarte Konfiguration, und Sie können konfigurieren, FATFS (Wenn Sie nicht wissen, was Sie tun, die dafaults kommen mit Cube ist in Ordnung). Code generieren und dann Lesen Sie STM32-FATFS guide
Ich habe nicht bemerkt, die Registerkarte Cube-vielen Dank ! Ich werde gelesen, und führen Sie einige tests, kann ich hier Fragen, wenn ich habe einige Probleme mit FatFs ?
InformationsquelleAutor SamR
Für andere vor diesem Problem, wählen Sie einfach Benutzerdefiniert in CubeMX und verwenden kiwih Treiber. Sie sind sehr gut und gut dokumentiert!
https://github.com/kiwih/cubemx-mmc-sd-card
InformationsquelleAutor Bbbbbbbbbb