Hallo zusammen, ich befinde mich gerade vor folgendem Problem. Ich will mit meinem FPGA über SPI eine SD-Karte ansprechen. Um die Antworten der SD-Karte, welche sie beim Initialisierungs-Prozess sendet, lesen und analysieren zu können hätte ich sie gerne irgendwo dargestellt. Meine Idee war jetzt, den FPGA über eine RS232 Schnittstelle mit dem PC zu verbinden und die Daten dort mit HTerm zu lesen. Der Aufbau ist also wie folgt: Der FPGA Sendet die Befehle zur Initialisierung per SPI an die SD-Karte und empfängt auch wieder über SPI die Antworten der gleichen. Diese soll er dann über RS232 weiter an den PC senden. Unabhängig voneinander funktionieren sowohl SPI, als auch RS232 Übertragungen (nach Vorbild von Lothar Miller) Gibt es schon so eine Art SPI-RS232 Schnittstelle in VHDL-Form? oder zumindest etwas in der Richtung? Vielen Dank vorab! Fabjus
Mmh, RS232 rauspusten ist doch das denkbar einfachste. Wenn Du einen Takt hast, der z.B. alle 1/115200s oder 1/µs ein enable-Signal für einen clockzyklus generiert, dann rassel 12 States runter bei jedem rising-clock wenn enable: 0 (startbit) 8*[0/1] (Datenbits[0..7] ) [0/1] Parity (falls gewünscht) 1 (stopbit) 1 (stopbit) und mit jedem zu sendenen Datum wird die Statemachine neu gestartet. Wenn Du SPI bidirektional hinbekommst, ist RS232 raus ein Kinderspiel. Wenn Du Dir den Inverter sparen willst, und Dein FPGA 3V 10mA treiben kann, dann drehe die Logik einfach um, also 1 als startbit etc.
Und warum das SPI-Signal nicht direkt mit einem Logik Analyzer für < 10 EUR anzapfen?
Hi, also bisher hab ich nur mit der IDE von Altera/Intel (Quartus Prime lite) rumgepfuscht, aber selbst die lite Version hat ein tool inne (SignalTap) das man für dise Zwecke nutzen könnte, evtl. hat die von dir genutze IDE ja auch so etwas... falls nicht, eines meiner ersten mir selbst auferlegten "Lernprojekte" war so eine Art SD Karten Zugriff via RS232 : Beitrag "SD card controller Test Projekt" ...nutzt zwar nicht SPI sonder 4 bit transfer mode aber der UART Teil mit den Puffern etc. könnten evtl. ein Denkanstoss für dich sein. Zugegeben die Umzetzung ist alles andere als schön, aber jeder fängt mal klein an und es funktionierte.
Fabjus schrieb: > Unabhängig voneinander funktionieren sowohl SPI, als auch RS232 > Übertragungen (nach Vorbild von Lothar Miller) > > Gibt es schon so eine Art SPI-RS232 Schnittstelle in VHDL-Form? oder > zumindest etwas in der Richtung? wenn das eine tut und das andere auch, dann pack' doch einfach noch einen dicken FIFO-Puffer dazwischen. So verhindertst Du, dass der UART "überfahren" wird und musst dir keine grossen Gedanken über die Synchronisation machen.
Markus F. schrieb: > pack' doch einfach noch einen dicken FIFO-Puffer dazwischen. So > verhindertst Du, dass der UART "überfahren" wird und musst dir keine > grossen Gedanken über die Synchronisation machen. Ich würde im ersten Schritt einfach die jeweils nächste SPI-Übertragung so lange verzögern, bis der UART wieder frei ist.
Lothar M. schrieb: > Ich würde im ersten Schritt einfach die jeweils nächste SPI-Übertragung > so lange verzögern, bis der UART wieder frei ist. Oder halt noch einfacher, 2MBaud Uart (oder 3, was der PC halt nativ kann) und die SPI (zu Debug-Zwecken) entsprechend nur die Hälfte.
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.