Forum: Mikrocontroller und Digitale Elektronik 3 AD-Wandler (1,5MB/s) an einem Parallel-Port


von Klaus (Gast)


Lesenswert?

Hallo,

durch meinen anderen Thread habe ich nun ein neues Problem.
Ich möchte an mein USB-Board von braintechnology 3 AD-Wandler üder 
Parallel-Port anschliessen.

Zwei Probleme tun sich mir dabei auf. Einmal das Nacheinanderauslesen 
der AD-Wandlerwerte und dann die Zuordnung der Wandler-Werte zu den 
entsprechenden Wandlern.

Ich habe mir überlegt, dass ich die restlichen Bits für eine 
Adressvergabe nutzen könnte. Also 12 Bit Wandlerwert und 4 Bit adresse. 
macht 16 Bit zum Parallelport.

Wie aber realisiere ich am besten eine so schnelles multiplexen zwischen 
den Wandlern?

von Matthias L. (Gast)


Lesenswert?

Welcher AD Wandler?

von Vlox (Gast)


Lesenswert?

Das Paralleport macht keine 1.5MSample. Allenfalls 10k.

von Klaus (Gast)


Lesenswert?

Ich habe mich noch nicht für einen AD-Wandler entschieden. Er sollte nur 
mindestens so schnell sein.

@Vlox: Welches ParallelPort meinst du? Das von dem USB-Board?
Laut braintechnology ist eins der bereits integrierten protokolle zum 
Beipsiel folgendes:

Bus width Max. Data transfer rate (Burst rate)
16 Bit 48 MB/s

von Christian R. (supachris)


Lesenswert?

Wie schon in deinem anderen Thread geschrieben, brauchst du auf jeden 
Fall externe Logik. Du willst ja sicherlich messen mit den 
AD-Wandlern, also musst du äquidistant sampeln, da muss der Takt von 
extern kommen und darf nicht durch USB bestimmt werden. Nutze am besten 
das Slave-FIFO-Interface im Cypress FX2, und etwas externe Logik, die 
die Wandler zeitgleich zum Sampeln veranlasst und anschließend die 
Output-Enables nacheinander freigibt, die Steuersignale für den 
Slave-FIFO generiert und somit die Daten in den USB-FIFO legt. Um ein 
kleines CPLD wirst du nicht herum kommen, kannst das ja auch im 
Schaltplan-Editor erstellen, wenn du kein VHDL kannst.

von Klaus (Gast)


Lesenswert?

Schonmal vielen vielen Dank Christian,

ich fang an langsam zu verstehen. Der CLPD fungiert quasi als 
Busmultiplexer. Also alle Datenleitungen von den 12 Bit AD-Wandlern zum 
CLPD (Bei 12 Bit 36 Leitungen Datenleitungen + Steuerleitungen)

Der Cypress sitzt wiegesagt auf einem fertigen Board. Dessen Firmware 
vom Entwickler und somit fertig. Ich kann nur die bereitgestellten 
Busfunktionen nutzen. Die ParallelPortFunktionen sind völlig unabhängig 
von den USB-Funktionen. Den USB-Datentransfer übernimmt dann die 
Firmware des Boards. Ich kann also mit dem internen Slave-FIFO-Interface 
im Cypress FX2 nicht arbeiten, sondern nur mit den 
Parallelportfunktionen.

Ich habe mal die Beschreibung hochgeladen
http://home.arcor.de/crumb_t/Usb2Dll_help179_en.html


Also, wie ich's verstanden habe.
AD-Wandler-Ausgänge zum CLPD. Der verwirklicht das Multiplexen. Diese 
Daten an einen externen FIFO. Und diese Daten an das ParallelPort des 
USBBoards. Und ich brauche eine externe Taktquelle (Quarz) für die 
Wandler?

Gruß
Klaus

von Christian R. (supachris)


Lesenswert?

Ich kenne die schrottige Firmware von BrainTechnology. Hab damit auch 
versucht, was zu machen. Ist aber nach 2 Stunden runtergeflogen und dann 
hab ich meine eigene Firmware auf den FX2 gemacht. Die ist ja leicht 
austauschbar, also kannste die auch selber schreiben. Mit den massig 
Code-Beispielen von Cypress kein Problem.
Dann kannst du dir den externen FIFO sparen. Ansonsten hast du das 
verstanden. Der CPLD multplext die Busse (wenn du ADCs mit Output Enable 
hast, ist das nichtmal nötig) und steuert die ADCs und das USB-Interface 
entsprechend an.

von Gast (Gast)


Lesenswert?

Hast du dein anderen Thread zum gleichen Thema nicht wiedergefunden, 
oder warum machst du einenen zweiten Thread auf?

von Klaus (Gast)


Lesenswert?

-> Neues Problem (da ich die spi-geschichte verworfen habe)
-> damit neues Thema -> neuer Threadtitel (geht ja nicht mehr um SPI)
-> Somit werden hier eher Leute reinschaun, die sich damit auskennen.
-> Und da die Forensuche nur die Überschriften durchsucht, ist es wohl 
besser, wenn das Thema zu Überschrift passt. (Falls mal jemand das Forum 
zu diesem Thema durchsuchen möchte)

Oder kurz gesagt. Der Übersichtlichkeit halber.

______________________

Um zurück zum Thema zu kommen. Ich habe einen AD-Wandler gefunden, der 
simultan 4 Kanaöle abtasten kann, diese multilext, mit internen FIFO und 
parallelem Ausgang.

Der THS1206. Ich bin zwar noch am Durchlesen des Dateblattes, aber ich 
denke, das wird wohl hoffentlich die Lösung für mich sein.

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
Noch kein Account? Hier anmelden.