Hallo, für mein neustes Projekt benötige ich 8 ADCs mit 3MS, die alle gleichzeitig sampeln. Nun habe ich bereits einen ADC herausgesucht. SPI, 3MS, 10Bit, alles super, aber: Aus dem Datenblatt entnehme ich, dass das Sampeln mit dem Herunterziehen der nCS Leitung erfolgt und die Daten über SPI gleich rausgeschoben werden, was ja meiner Forderung nach gleichzeitigem Sampeln im Wege steht. Mich würde interessieren wie ihr das so macht. Grüße Michael
>Aus dem Datenblatt entnehme ich, dass das Sampeln mit dem Herunterziehen >der nCS Leitung erfolgt und die Daten über SPI gleich rausgeschoben >werden, was ja meiner Forderung nach gleichzeitigem Sampeln im Wege >steht. Wieso? Braucht's halt 3SPI's. Wo ist das Problem? Mit einem AVR brauchst du da ohnehin nicht mal dran denken. Grüsse
@ Michael Sonst (Gast) >Nun habe ich bereits einen ADC herausgesucht. Welchen? >Aus dem Datenblatt entnehme ich, dass das Sampeln mit dem Herunterziehen >der nCS Leitung erfolgt und die Daten über SPI gleich rausgeschoben >werden, was ja meiner Forderung nach gleichzeitigem Sampeln im Wege >steht. Warum? Weil ein normaler SPI-Master nicht 8 Stück gleichzeitig auslesen kann? Ok, das ist ein Problem. Mit einem CPLD ginge es aber, dort kriegt man 8 SPI-Master rein, die man dann vom uC aus lesen kann, ggf. sogar mit parallelem (memory mapped) Interface. In die Richtung wird es so oder so laufen, denn du hast ja immerhin 3x8=24 Msmps = 240Mbit/s, die du in Echtzeit irgendwo speichern musst. Ein kleiner AVR kann das nicht mehr, ein größerer ARM kann das auch nur memory mapped oder über anderes, schnelle Schnittstellen.
@Gebhard Raich (geb)
>Braucht's halt 3SPI's. Wo ist das Problem?
Der OP hat ACHT ADCs. Und 3 Msmps.
Habe sowas ähnliches gemacht. 16ADC 12Bit 3MSamples. Gemeinsamer Clock und nCS, separate Datenleitunge. Die ADC's werden von einem FPGA angesteuert, funktioniert wunderbar. Problematisch wird aber die Übertragung zum Computer.
Ah, verlesen. Ja, dein Vorschlag ist gut, alternativ zum CPLD kann er ja ein CMOS Grab mit Schieberegistern und Steuerlogik errichten. Grüsse
@Falk Brunner: -Den MAX11117. -Hatte schon drüber nachgedacht die Datenleitungen in je ein Latch zu schieben. @Tach: Ja, warum? 240MBit/s Ist ja nicht unbedingt viel. @Delta: Klingt sehr ähnlich =) Ist das öffentlich? Grüße Michael
Michael Sonst schrieb: > @Delta: > Klingt sehr ähnlich =) Ist das öffentlich? Nein, das Projekt ist leider nicht öffentlich. Ist aber eigentlich auch keine grosse Sache. Bei Fragen stehe ich natürlich gerne zur Verfügung.
Ich würde mir mal anschauen, ob ich mit 8 Wandlern eine Daisy Chain aufbauen könnte. Immerhin steht im Datenblatt, dass der Baustein QSPI könne. Dann hast du einen einzigen SS für alle ADCs. Siehe dort unten: http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus Allerdings habe ich den schlimmen Verdacht, dass da bei Maxim einer nicht weiß, was QSPI ist...
@Lothar: Laut Datenblatt hat der Baustein nur VDD, GND, AIN, nCS, DOUT, SCLK, kein MISO :-/ Ehrlich gesagt ist das doch nicht wirklich eine Sonderlocke die ich da basteln will. Seltsam, dass es hierzu so wenig Informationen gibt. Grüße Michael
Michael Sonst schrieb: > @Tach: > Ja, warum? 240MBit/s Ist ja nicht unbedingt viel. Na dann :-) Ich hab das auch schon mal gemacht. Waren 10x 14Bit x 3MHz, also geringfügig mehr...allerdings hatte ich einen FPGA und konnte mir mit entsprechend vielen SPI-Schnittstellen bzw. Logik behelfen. Entweder willst Du die Daten direkt im uC weiterverarbeiten oder Du willst Sie irgendwohin übertragen. Beides ist nicht gerade ohne (persönliche Meinung). Delta hatte ja schon erwähnt dass selbst eine Übertragung zum PC nicht ohne ist. Evtl. mit Gigabit-Ethernet ;-)
@Tach: Ob ich einen FPGA, oder einen uC dahinter hänge wollt ich auf Grundlage dieses Threads u.a. entsccheiden. :-) Leider scheint es hiefür allerdings keine 0815 Lösung zu geben. Grüße Michael
Michael Sonst schrieb: > @Lothar: Laut Datenblatt hat der Baustein nur VDD, GND, AIN, nCS, DOUT, > SCLK, kein MISO :-/ Dann ist das Datenblatt schon auf der ersten Seite Müll, denn QSPI ist SPI, nur eben "Queued" als Daisy Chain... Michael Sonst schrieb: > @Tach: Ob ich einen FPGA, oder einen uC dahinter hänge wollt ich auf > Grundlage dieses Threads u.a. entsccheiden. :-) Nimm einen MachXO, lies alle ADC parallel ein und gib sie irgendwie dorthin weiter, wo du die Daten eigentlich brauchst. Wo brauchst du die eigentlich? Oder du nimmst einen ADC, der Daisy Chain kann, oder, oder oder...
Die CPU könnte (ohne CPLD) 8 Bit parall. einlesen, und zwar je Befehl die einzelnen Databits der 8 SPI-Slaves. Macht (für die 8 ADCs) 10 EinleseBefehle je Wert, insges 333ns, also 33ns je einzelnen EinleseBefehl. (Die gelesenen Bits müssten danach nat noch aufgeteilt werden, was nat wieder etwas Rechenleistung kostet). (damit noch Rechenleist. übrig bleibt, müssten die EinleseBefehle nat schneller abgearb. werden)
@ MCUA (Gast) >die einzelnen Databits der 8 SPI-Slaves. Macht (für die 8 ADCs) 10 >EinleseBefehle je Wert, insges 333ns, also 33ns je einzelnen >EinleseBefehl. Nebenbei muss aber noch der SPI-Takt generiert werden, und das synchron. Naja, solche Tricks sind machmal schon OK, aber irgendwann wird es albern. Ein FPGA macht das mit einem müden Lächeln.
>Nebenbei muss aber noch der SPI-Takt generiert werden, Kann aus den \RD-Signal abgezweigt werden (bzw ist das selbe), muss nicht synchr sein. >Naja, solche Tricks sind machmal schon OK, sagte ja nicht dass das die einzigste Möglichkeit wäre, aber Manche verwenden auch dicke Brummer, wo s überhaupt nicht nötig wäre. Ausserdem, schnell genug lesen muss die CPU sowiso können, da hilft auch ein FPGA nicht (sofern man es nicht als Co-Proz benutzt).
Tach schrieb: > Delta hatte ja schon erwähnt dass selbst eine Übertragung zum PC nicht > ohne ist. Evtl. mit Gigabit-Ethernet ;-) Ich verwende zur Übertragung des Streams USB3 (mit dem Cypress FX3). Steckt aber noch in den Kinderschuhen. Falk Brunner schrieb: > Ein FPGA macht das mit einem müden Lächeln. ;) Kann ich bestätigen. Michael Sonst schrieb: > Ob ich einen FPGA, oder einen uC dahinter hänge wollt ich auf > Grundlage dieses Threads u.a. entsccheiden. :-) Was willst du denn machen? Was willst du mit den gewonnen Daten anstellen? Verarbeiten, Komprimieren, Speichern, Anzeigen usw?
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.