Hallo, ich möchte ohne großen Hardware- und Softwareaufwand einen syncronen seriellen Datenstrom mit 5,7 MBit in den PC einlesen. Gruß Der Suchende
> einen syncronen seriellen Datenstrom mit 5,7 MBit in den PC einlesen. Das packt der PC schon, das sind gerade mal 712 kByte. Soviel RAM wird der schon haben. Du mußt die Daten nur hübsch langsam übertragen... Oder meintest du 5,7 MBit/sec? :-o > einen syncronen seriellen Datenstrom Welche Signale hast du? Daten und Takt?
>ich möchte ohne großen Hardware- und Softwareaufwand..
wie siehts denn mit Geldaufwand aus? Denn ohne extra PCI(e)/USB Hardware
wirst du das wohl nicht können.
Hallo, @lkmiller Sind natürlich 5,7 MBit/s. Es gibt ein Daten- und ein Taktsignal. @masterfx Welche USB-Hardware kannst du empfehlen? Gruß Der Suchende
Was für ein Serieller Bus? SPI? I2S? Für SPI gibt es Schnittstellen mit USB oder PCI Interface. Ansonsten ein Mikrocontroller Eval Board mit USB verwenden (z.B. EVK1100 ). Daten über die synchrone serielle Schnittstelle einlesen und über USB an den PC schicken.
>Welche USB-Hardware kannst du empfehlen?
USB kenne ich aus dem Stehgreif keine. PCI/PMC etc. hätte ich ein paar
High Speed Synch/Asynch Serial Interface Karten parat. Kosten so um die
1000€. Es gibt aber auch schon welche für 400-500€.
Ich würde ein kleines CPLD nehmen, was die Daten in 16 Bit Breite parallelisiert und diese dann mit dem Cypress FX2 im Slave FIFO Modus per USB an den Rechner übertragen. Bei Quad-Buffer hat der 4x512Byte FIFO drin, das sollte reichen, um einen kontinuierlichen Datenstrom zu garantieren. Ein kleines FPGA mit internem BlockRam als zusätzlicher FIFO wist natürlich noch besser.....kleiner Spartan 3e kostet kaum was.
Hallo, @gast Werde mir das EVK1100 anschauen. Schaft die serielle Schnittstelle des EVK1100 die 5,7 MBit/s? @masterfx Meine preisliche Vorstellung liegt bei so max. 100 -150€. Wenn möglich ohne Einbau in den PC, z. B. USB oder PCMIA. @supachris Schaue mir den Cypress FX2 mal an. Gruß Der Suchende
Das sollte ein FT2232H auch schaffen. Preis etwa 7 EUR.
Nur als Verständnisfrage, könnte man sowas auch muxen? Ich denk da an Telefonleitungen die das genauso machen.
@ Pascal O. (raven761) >Nur als Verständnisfrage, könnte man sowas auch muxen? Was soll das bringen? > Ich denk da an Telefonleitungen die das genauso machen. Ja und? Multiplexen spart Leitungen, aber keine "Rechenpower". MFG Falk
War ja ne Verständnisfrage. Wenn man zuviel Rechenaufwand hätte, könnte man den ja auf mehrere Controller verteilen und schließlich wieder zusammenführen.. Aber danke trotzdem!
@ Pascal O. (raven761) >War ja ne Verständnisfrage. Wenn man zuviel Rechenaufwand hätte, könnte >man den ja auf mehrere Controller verteilen und schließlich wieder >zusammenführen.. Aber danke trotzdem! Das Problem ist nicht die Rechenleistung, die hat jeder 0815 PC heute spielend. Das Problem ist die "Bitfummelei". Denn PCs haben dafür keine brauchbare Schnittstelle. Also muss die "Drecksarbeit" eine kleine Elektronikbox machen und den PC "mundgerecht" per USB mit Daten füttern. Dann sind 5,7Mb/s ein Klacks. MFG Falk
Da gabs doch mal den LPT. Es gab auch mal einen Joystick-Port. Das gibt es alle glaube ich auch inzwischen als USB (was für'n Unfug). Aber da hätte man schonmal Eingänge... vorrausgesetzt so ein LPT über USB wäre schnell genug - das weiß ich nicht.
> Da gabs doch mal den LPT. Es gab auch mal einen Joystick-Port. Sind beide für die Aufgabe komplett ungeeignet. > Das gibt es alle glaube ich auch inzwischen als USB (was für'n Unfug). > > Aber da hätte man schonmal Eingänge... vorrausgesetzt so ein LPT über > USB wäre schnell genug - das weiß ich nicht. So etwas ist für die Aufgabe sogar noch weniger geeignet.
>Sind beide für die Aufgabe komplett ungeeignet.
Soweit ich mich erinnere konnte man die Steuerleitungen als Eingang
verwenden - warum ist das ungeeignet ? Es gab sogar mal so eine Art
Netzwerk für Arme, da wurden Rechner über LPT (modernere Varianten EPT
oder EPP) verbunden. Laplink oder wie das hiess. Wie die
Übertragungsraten da aussahen kann ich aber nicht sagen.
Zwar kann man die Steuerleitungen beim "echten" Parallelport als Eingang verwenden, aber das sind reine Binäreingänge, ohne jedwede weitere Verarbeitungsfunktion. Die Software müsste sie pollen (sprich: zyklisch auf Änderung abfragen), was aufgrund der PC-Architektur (ISA ist immer noch nicht tot) selbst unter DOS nicht mit mehr als ein bis zwei MHz Abtastrate möglich ist. Unter ernstgemeinten Betriebssystemen bricht diese Abtastrate auf bestenfalls ein paar kHz zusammen. Auch die EEP/ECP-Funktionalität ändert daran nichts. Bei USB-Paralleldruckeradaptern steht dieser Weg aber erst recht nicht zur Verfügung.
Also am einfachsten ist es du legst den Datenstrom auf auf die Laserdiode von so 'nem DVD Brenner. Dann lässt du ihn mit ca. 20 000 U/min rotieren und schiebst den Kopf entsprechend weiter. 4,7GB durch 5,7MB/s = 825s = 13 3/4 Min Aufzeichnungszeit. In der Zwischenzeit kannst du den zweiten Brenner klarmachen so das du auch eine Langzeitaufzeichnung hinbekommst. Einlesen mit nem Datenrettungstool Das war's. Alternativ kannst du ja mal verrraten wie lange das ganze gehen soll, welche Pegel ankommen und was für Daten da so eintrudeln.
Gast XIV schrieb: ...nur Unsinn... Kurz gesagt: Ohne externe Hardware geht es nicht. Deserialisieren, puffern und dann zum PC übertragen.
Hallo, travelrec hat den FT2232H vorgeschlagen. Hat jemand Erfahrung damit? Scheint für mich eine günstige Lösung (in bezug auf Aufwand und Kosten) zu sein, wenn der virtuelle COM-Port die geforderte Datenrate schafft, d. h. kann z. B. bei Visual C die entsprechende Bautrate eingestellt werden. Bei Hyperterminal ist bei 921600 Baud schluß, vermutlich wegen der PC-Hardware. Gruß Der Suchende
>Bei Hyperterminal ist bei 921600 Baud schluß, vermutlich wegen >der PC-Hardware. Das liegt nur am Treiber der verwendeten Schnittstellen. Der FT2232H bringt eigene Treiber und DLLs mit, die man nach Belieben in eigenen Programmen ansprechen und verwenden kann. FTDI wirbt mit 30MBit/s Datentransferrate pro Kanal, bei Verwendung einer USB2.0 Hostschnittstelle. Zwei Kanäle hat der Chip.
Naja, direkt an den virtuellen COM Port kannst du das nicht hängen, denn da fehlt ja Start und Stopp Bit usw. außerdem ist COM asynchron und dein Signal synchron. Eventuell gehts über die SPI, aber das halte ich für ausgeschlossen, wenn du keine daten verpassen willst. USB hat den gravierenden Nachteil der unberechenbaren Latenzzeiten.
USB2.0 hat MicroFrames und der FT2232 hat Buffer onChip.
Richtig, aber kann der den synchronen Datenstrom pausenlos lesen? Dazu muss doch sicher immer erst eine Anforderung an die MPSSE geschickt werden? Wie sieht denn der Datenstrom überhuapt aus? Sind da Pausen nach den Worten oder ein Chip-Select wie erkennt man, an welcher Bitposition man ist? Oder wo kommt das überhaupt her?
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.