STM32F4 ADC auslesen mit SPI+DMA

OP #3676079
Lesenswert?
• ▲
▼
Hallo,

ich würde gerne wissen wollen, ob man mit dem STM32F4 über SPI und DMA 
einen externen angeschlossenen ADC schnell genug auslesen kann.

Der ADC AD7902 hat folgende Daten:
2 Kanäle
16Bit
1MSPS
10MHz

Wenn ich das STM32F4 mit 168 MHz betreibe, dann ist doch der APB2 Clock 
= 84MHz. Der kleinste Prescaler Wert bei DMA ist 2. Damit hätte ich eine 
Frequenz von 42MHz. Bei 16 Bit Werten sind das 42MHz/16 = 2,625MHz.
Die maximale Datenrate des ADCs ist 1MSPS -> 1MHz.
Jeder Kanal hängt an einem DMA Controller: DMA1/DMA2.
=> sollte funktionieren

Ist meine Überlegung so richtig?

Wenn die Daten mit 1MSPS übertragen werden, wäre das doch wie, als wenn 
ich eine Abtastfrequenz von 1MHz hätte.
Aber für den Anti-Aliasing Filter kann man doch trotzdem mit 10MHz 
rechnen, oder?

Vielen Dank für eure Hilfe

Gruß Dirk
OP #3676126
Lesenswert?
• ▲
▼
Hallo,

danke für die Antwort.

Aber das mit 1MSPS ist mir noch schleierhaft. Im Datenblatt

http://www.analog.com/static/imported-files/data_sheets/AD7902.pdf

auf Seite 6 ist die Zeit t_cyc mit 1000ns angegeben. Diese Zeit 
beinhaltet, laut der Skizze auf Seite 19 die Abtastung + 
Datenübertragung.

1000ns = 1us -> 1Sample/1us = 1e6 Samples / s oder?

Die 10MHz ist als Bandbreite angegeben, mit welcher das S&H in dem ADC 
noch kla kommt.

Aber stimmt, wenn ich auf 1MSPS komme, dann entspricht das auch meiner 
Abtastfrequenz. Hm aber warum dann die 10MHz?


Gruß Dirk
#3676163
Lesenswert?
• ▲
▼
Dirk S. schrieb:
> Wenn die Daten mit 1MSPS übertragen werden, wäre das doch wie, als wenn
> ich eine Abtastfrequenz von 1MHz hätte.

SPI überträgt die Daten seriell, d.h. Du musst noch durch die 16 Bit 
Wortbreite teilen. Du bräuchtest also mindestens 16 MHz SPI Takt für die 
Daten.

> Der kleinste Prescaler Wert bei DMA

Schau Dir lieber an, was das SPI Peripherial so hergibt. Das bestimmt 
den SPI Takt.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.