Forum: Mikrocontroller und Digitale Elektronik STM32F405RGT6 für AD7768 ADC schnell genug?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Charly (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich möchte zwei simultane Kanäle eines AD7768 A/D Wandlers @ 256 kS/s 
nutzen. Die Auflösung beträgt jeweils 24 bit, was eine Datenrate von 2 x 
24 bit x 256 kS/s = 12.288 Mbit/s ergibt.

Diese Rohdaten möchte ich mittels eines Mikrocontrolers in Echtzeit und 
via USB 2.0 an einen PC übertragen.

Aus einem früheren Projekt habe ich noch einen STM32F405RGT6 
Mikrocontroller mit einem Takt von 168 MHz. Kann jemand abschätzen, ob 
dieser Mikrocontroller diese relativ hohe Datenrate hinbekommt? (Ein 
FPGA wäre natürlich die sicherere Alternative, wäre allerdings auch 
aufwändiger in der Realisierung.)

Danke für eure Hilfe!

von Rechenkünstler (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ist doch SPI. Für 1536000 Bytes bei 20mhz SPI, braucht dieser hierfür 
0,6144s.

von Charly (Gast)


Bewertung
0 lesenswert
nicht lesenswert
SPI scheint laut Datenblatt nicht das Problem zu sein: "SPI1 can 
communicate at up to 42 Mbits/s, SPI2 and SPI3 can communicate at up to 
21 Mbit/s"

von jo mei (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich liebe es wenn man aus der Datenrate eines Bausteins die
mögliche Arbeitsgeschwindigkeit seines Gesamtdesigns ermittelt
(will heissen sich per copy&paste berechnet).

von Charly (Gast)


Bewertung
0 lesenswert
nicht lesenswert
jo mei schrieb:
> Ich liebe es wenn man aus der Datenrate eines Bausteins die
> mögliche Arbeitsgeschwindigkeit seines Gesamtdesigns ermittelt
> (will heissen sich per copy&paste berechnet).

Gerade ja nicht, deshalb frage ich ja. Mir geht es ja genau um die 
Frage, ob der Controller die Daten verarbeitet bekommt und es dann auch 
schafft diese per USB wieder zu versenden.

von Rechenkünstler (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Charly schrieb:
> Gerade ja nicht, deshalb frage ich ja. Mir geht es ja genau um die
> Frage, ob der Controller die Daten verarbeitet bekommt und es dann auch
> schafft diese per USB wieder zu versenden.

Warum nicht? Das weiterleiten ist quasi langweilig für den Controller. 
Könnte man auch mit DMA machen deine CPU hat quasi nichts zu tun.

Also der DMA sammelt die Rohdaten von 1/10 Sekunde. In dieser Zeit hast 
du Freie Kapa. Anschließend stößt du einen weiteren DMA an, der die 
Daten zum PC sendet und deine CPU macht parallel ganz tolle Sachen mit 
deinen Rohdaten.

In diesem Szenario hast du quasi 0Sekunden mit dem weiterreichen der 
Nutzdaten verbraucht.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Bewertung
0 lesenswert
nicht lesenswert
Der genannte ADC hat SPI nur als Control Interface.

Die Daten popelt man aus einer Mischung aus paralelem und seriellen 
Interface raus. Es braucht zwar 24 Takte, aber beide ADC Ergebnisse 
werden gleichzeitig rausgetaktet. Das ist aber kein Problem, brauchste 
eben 2 SPI Periph, die als Slave arbeiten.
Der Takt kommt ja vom ADC.

Das sollte aber kein Problem sein.
Ein STM32F205 auf 120MHz sampelt hier 2 ADC Kanäle zu 16Bit und 250kS/s.
Da es ein Wirkleistungsmessgerät ist wird auch noch auf diesen Samples 
direkt gerechnet, hier soll ja nur durchgereicht werden.
Weiterhin muss nebenbei noch eine GUI ausgegeben werden.

Was sonst noch gerne vergessen wird:
Der STM32 kann nur USB2.0 480MBit mit einem externen ULPI PHY.
Sonst geht nur USB mit 12MBit und das ist offensichtlich zu wenig.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.