Hallo, Ich möchte an den STM32F207Vx eine MMC Karte an die SDIO Ports an schließen. Allerdings brauche ich auch möglichst viele UARTS (5 Stück) und kann somit die Pins SDIO_D2/3 nicht nutzen, da für UART4 verwendet. Der STM32 SDIO kann mit einer Datenleitung genutzt werden, soweit die Doku. Weiß jemand wie ich die Karte richtig beschalte/anschließe so dass es geht? Die restlichen Pins, bekommen die einen PullUp/Down Widerstand? Ich wollte jetzt kein SPI verwenden, wenn der STM32 bereits ein SDIO IF drin hat. Danke für Tipps, Links und Demos im Voraus. Grüße Markus.
>Allerdings brauche ich auch möglichst viele UARTS (5 Stück) und kann >somit die Pins SDIO_D2/3 nicht nutzen, da für UART4 verwendet. >Der STM32 SDIO kann mit einer Datenleitung genutzt werden, soweit die >Doku. Lass das bitte sein. Kastriere das SDIO nicht;) Das ist ja Verschwendung pur. Bau dir doch einen Software UART.
SW-UART geht nicht, der STM32 wird sehr viel zu Arbeiten haben, denn die anderen Schnittstellen müssen auch berechnet/bedient werden. Ethernet als Web-Server ist da auch noch mit geplant. Da ich in dem Board so viele Funktionen habe brauche ich das nun mal. Für einen extra UART Chip ist kein Platz mehr. Ich weiß, dass damit SDIO "Kastriert" und ausgebremst wird, aber das nehme ich in Kauf, da ich nicht die Geschwindigkeit der Karte brauche. Am liebsten hätte ich sogar gerne einen 6ten UART für eine Debug-Ausgabe, aber geht nicht da SDIO_CLK/CMD der gleiche Pin wie UART5_TX/RX ist (PD2/PC12). Dann muss ich diese Ausgaben umbiegen auf einen anderen UART und den mehrfach benutzen.
>Ich weiß, dass damit SDIO "Kastriert" und ausgebremst wird, aber das >nehme ich in Kauf, da ich nicht die Geschwindigkeit der Karte brauche. Irgendwann wirst du das bereuen. >Am liebsten hätte ich sogar gerne einen 6. UART für eine Debug-Ausgabe, >aber geht nicht da SDIO_CLK/CMD der gleiche Pin wie UART5_TX/RX ist >(PD2/PC12). Hast du das Remapping schon voll ausgeschöpft?
Markus Müller schrieb: > Am liebsten hätte ich sogar gerne einen 6ten UART für eine > Debug-Ausgabe Stichwort: Debug-Printf Debugausgaben im Printf-Stil per Debugger empfangen.
Markus Müller schrieb: > Ich weiß, dass damit SDIO "Kastriert" und ausgebremst wird, aber das > nehme ich in Kauf, da ich nicht die Geschwindigkeit der Karte brauche. Dann nimm doch das SPI-Interface für die SD Karte.
Die SDIO Schnittstelle unterstützt lt. Doku bereits die ganzen CMD Befehle und mir scheint dass die Ansteuerung einfacher wird, da vieles SDIO ab nimmt. Ich habe jetzt zwar noch nicht so im Detail darüber gelesen (SW-Funktionen), da ich jetzt erst mal die HW plane, aber es muss doch mit SDIO möglich sein. Ich habe von ST kein Beispiel gefunden wie ich die Karte anschließen sollte. Daher die Frage wie beschalte ich die SD-Karte richtig mit SDIO?
> Hast du das Remapping schon voll ausgeschöpft?
Ja.
PA1 brauche ich für RMII_REF_CLK, somit kann ich PA1 nicht für UART4
nutzen.
SDIO_Dx Pins werden nur an einem Port-Pin für Remap angeboten.
UART5 und SDIO sind auch nicht kombinierbar.
Also wenn du bloß so eine olle MMC und keine SD anschließen willst, dann mach das Ganze doch schlicht per Software und laß die SDIO-Schnittstelle bleiben. Ich hatte sowas Ähnliches schon mal notgedrungen an einem LPC von NXP zelebriert, weil ich den Slave-Select für die SPI Schnittstelle woanders gebraucht hatte und das ganze SPI ohne dieses Signal nicht ging. Siehe angehängtes Archiv W.S.
Gnubbel schrieb: > Markus Müller schrieb: >> Am liebsten hätte ich sogar gerne einen 6ten UART für eine >> Debug-Ausgabe > > Stichwort: Debug-Printf > > Debugausgaben im Printf-Stil per Debugger empfangen. Über JTAG? Ist im Fall von STM32 & IAR & J-Link tödlich!
Servus Markus, fange gerade auch mit dem SDIO an. Hast Du dir schonmal den Beispiel Code der ST Eval Boards angesehen? Ich meine den vom ST3210E Eval Board. Da ist eine Implementierung für die SDIO Schnittstelle enthalten. Die Schnittstelle startet erst mit einer Leitung und schaltet dann auf vier Datenleitungen um. Ich glaube es gibt bei der Firmware auch die Möglichkeit auf zwei Datenleitungen zu schalten. Gruß, Ralf
Hallo Ralf, Nein, lt. STM Doku nur 1Bit, 4 und 8. So viel ich weiß sind die STM Sourcen nur das "Grundgerüst" ohne Dateisystem. Es gibt im Netz ein paar SPI Varianten, die bereits FAT Dateisystem können: http://elm-chan.org/ http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/arm_memcards/#chanfat_stm32 (zweiter Link hatte ich mal vor einigen Jahren auf einem ARM7/LPC mal getestet und hat auf Anhieb geklappt) Daher denke ich, dass es wohl das einfachste sein wird SPI zu verwenden. Vom ersten Link sollte es ein Port geben, wo jemand das auf SDIO umgeschrieben hat, ich kann das nicht finden. Ich muss mir das erst mal noch genau durch den Kopf gehen lassen. Ich bin in jedem Fall noch dran und am suchen und auch noch nicht 100% sicher was ich mache. Da die Platine erst gemalt wird bin ich noch frei. Was würdest Du machen?
Hi Markus, das elm chan FAT system habe ich bei mir quick and dirty mit SDIO 4Bit am laufen. Ging eigentlich relativ problemlos. Getestet habe ich allerdings noch nicht richtig da ich die Details noch nicht richtig verstanden habe. Wollte nur schnell mal was am laufen haben :-). Die Quellen kann ich Dir geben. Gruß, Ralf
Hallo Ralf, könnest Du mir den Code bitte auch mailen? Ich versuche schon seid einiger Zeit ein Beispiel zum Laufen zu bekommen, aber es klappt irgendwie nicht. Das wäre wirklich klasse! Mail Adresse: rasenderralph at gmx.de
Ralph H. schrieb: > Hallo Ralf, > > könnest Du mir den Code bitte auch mailen? > > Ich versuche schon seid einiger Zeit ein Beispiel zum Laufen zu > bekommen, aber es klappt irgendwie nicht. > > Das wäre wirklich klasse! > > Mail Adresse: rasenderralph at gmx.de Sorry, ich habe einen Typo in meine Email Adresse eingebaut. Korrekt ist: rasender_ralph at gmx.de
Achso, falls das ganze noch aktuell sein sollte, wollte ich noch kurz wissen, wie das ganze dann genau aussehen soll. Ich habe ein Display über eBay gekauft und dieses hat einen SD-Kartenslot schon eingebaut. Dieser wird nun über eine Stiftleiste herausgeführt. Jetzt schließe ich eigentlich nur CLK, CMD, D0 und einen CS an. Ist das soweit richtig? Gibt es den CS schon im SDIO Interface? Hab jedenfalls keinen gefunden. Wäre dankbar für Hilfe. Dennis
Arne schrieb: >> Stichwort: Debug-Printf >> >> Debugausgaben im Printf-Stil per Debugger empfangen. > Über JTAG? Ist im Fall von STM32 & IAR & J-Link tödlich! echt? also aufm LPC mit Xpressodebugger geht sowas mit dem STlink auch soweit ich das testen konnte für mich ist IAR gestorben .. das ding hat mir mal so derbe ne woche versaut ... egal wie gut der sein soll ... 2500€ fürn popo jede GCC variante is mir 1000x lieber als diese verkappte IDE
fdssd schrieb: > für mich ist IAR gestorben .. > das ding hat mir mal so derbe ne woche versaut ... > egal wie gut der sein soll ... 2500€ fürn popo Es wäre schön, wenn Du das Problem genauer beschreiben könntest. Wie oft liest man, dass ein Prozessor spinnt, obwohl das eigene Programm 100% in Ordnung ist. Zu oft sitzt das Problem vor dem Rechner.
kann jemand mir kurz bei meiner Belegung des Controllers helfen? hab ich das aus dem Datenblatt soweit verstanden? bzw gibt es einen bestimmten pin für den CS?
Ralf schrieb: > Hi Markus, > > das elm chan FAT system habe ich bei mir quick and dirty mit SDIO 4Bit > am laufen. Ging eigentlich relativ problemlos. Getestet habe ich > allerdings noch nicht richtig da ich die Details noch nicht richtig > verstanden habe. Wollte nur schnell mal was am laufen haben :-). > Die Quellen kann ich Dir geben. > > Gruß, > Ralf Hallo, kannst Du mir bitte die Quellen per PN schicken? Danke.
Hi, hier gibt es ein komplettes Projekt, das prima läuft Beitrag "Re: Fat auf SD ansteuern über STM32" Gruß Tom
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.