Hallo, ich möchte ein (sehr schnelles) Signal analysieren. Dazu verwende ich einen Atmega 644P, welcher möglichst schnell den Pin A0 a/d wandelt. Nach 1024 Samples, welche in einen Array abgelegt werden, überträgt der Atmega diese seriell zum PC, der die eigentliche Signalanalyse vornimmt. Leider erreiche ich mit der Single-Conversion höchstens Samplingraten von 30kHz (gemessen an einem Testsignal). Wie kann ich höhere Frequenzen (so hoch wie möglich!) erreichen?
Wie schnell ist denn ein "sehr schnelles Signal"? Externer ADC an Atmega, an SPI oder parallel angeschlossen und die Daten per DMA in den Speicher. Noch schneller gehts mit externem ADC, CPLD und direkt in den Speicher.
Etwa das Doppelte erreichts Du im Free-Running Modus, also etwa 72kHz, was einer Signal-Bandbreite von <35kHz entspricht.
^wundert sich gerade wo ihr die taktzeiten für das projekt des Authors hernehmt um das errechnen zu können ...
Travel Rec. wrote:
> Ist die maximale Geschwindigkeit des ADC, 13,5µs.
Laut Datenblatt werden maximal 200kHz ADC Takt empfohlen, macht also
15,4kS/s. Allerdings erlaubt das Datenblatt bis zu 1MHz ADC Takt bei
leicht reduzierter Auflösung, also 76,9kS/s. Man kann auch noch etwas
höher gehen. Bei etwa 150-200kS/s ist dann allerdings Schluss, darüber
liefert der ADC nur noch Mist. Zumindest war das meine Erfahrung (ein
Sinus war nicht mehr wirklich als Sinus erkennbar, so stark war das
Signal verzerrt).
Hallo, ich würde mich freuen, wenn mir jemand die Initialisierung und das kontinuierliche Auslesen des ADC im Freerun-Modus auf dem Atmega644 als Minimalbeispiel zeigen könnte.
Christian R. wrote: > Wie schnell ist denn ein "sehr schnelles Signal"? > > Externer ADC an Atmega, an SPI oder parallel angeschlossen und die Daten > per DMA in den Speicher. Noch schneller gehts mit externem ADC, CPLD und > direkt in den Speicher. Seit wann kann ein AVR DMA? Wäre mir jetzt irgenwie sehr neu
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.