Forum: Mikrocontroller und Digitale Elektronik ADC richtig auslesen


von Philipp (Gast)


Lesenswert?

Hallo zusammen,

habe nur eine kurze Frage zum richtigen Gebrauch eines ADC's ( Beispiel 
MCP3204):

Der hat ja eine maximale Anzahl an Wandlungen pro Sekunde, welche er 
leisten kann. Muss ich jetzt selber mir mitm Timer-Counter einen Zähler 
bauen, der den ADC immer in der richtigen Frequenz ausliehst? Was 
passiert, wenn ich den ADC öfters auslese, als er eigentlich an 
Wandlungen bereitstellen kann? Gibt es da eine schöne Lösung oder ist 
ein software-seitige Steuerung mittels Counter/Timer der richtige Weg?

Ich will den ADC halt immer sooft es geht auslesen in der Sekunde.

Vielen Dank für die Hilfe.

Gruß
Philipp

von Karl H. (kbuchegg)


Lesenswert?

Philipp schrieb:

> Der hat ja eine maximale Anzahl an Wandlungen pro Sekunde, welche er
> leisten kann. Muss ich jetzt selber mir mitm Timer-Counter einen Zähler
> bauen, der den ADC immer in der richtigen Frequenz ausliehst?

"Auslesen" ist nicht dasselbe wie "Wandeln".

> Was
> passiert, wenn ich den ADC öfters auslese, als er eigentlich an
> Wandlungen bereitstellen kann?

Nix. Dann kriegst du eben mehrmals dasselbe (letzte) Ergebnis.

Du kannst ja auch am Fussballplatz öfter auf die Anzeigetafel schauen 
als diese aktualisiert wird.

> Ich will den ADC halt immer sooft es geht auslesen in der Sekunde.

Bei den meisten integrierten ADC kann der ADC einen Interrupt auslösen, 
wenn er wieder ein Ergebnis fertig hat. D.h. der ADC kann dein Programm 
benachrichtigen, wenn ein Ergebnis fertig ist. Gleich danach beginnt der 
ADC dann mit der nächsten Wandlung.

: Bearbeitet durch User
von Pandur S. (jetztnicht)


Lesenswert?

Und dann gibt es noch ADCs, die haben bei ueberschnellem Ablesen einfach 
weniger genaue Bits.

von Stefan S. (mexakin)


Lesenswert?

Wenn du ganz schnell und korrekt sein willst, kannst du das timing 
komplett selber in Timern realisieren. Wenn du ihn zu oft abfragst 
senden, zumindest die, die ich benutze, einfach das letzte korrekte 
Ergebnis also im schlimmsten Fall kriegst du öfters dasselbe Ergebnis 
und merkst es nicht.

Dann haben einige ADCs einen Conversion Ready Ausgang, den man abfragen 
kann. Sobald der eben high ist oder entsprechendes, dann steht ein neues 
Ergebnis zur Verfügung.

von Georg G. (df2au)


Lesenswert?

Durch das SPI Interface ist der MCP3204 etwas anders als "übliche" 
Wandler.

Sieh dir mal das Datenblatt an, Seite 16, Bild 5.1. Dort ist der 
zeitliche Ablauf genau dargestellt. Die Wandlung wird durch das SPI 
Interface angestoßen und es kommt das Ergebnis. Nach der Übertragung 
kannst du nach 500ns Wartezeit sofort die nächste Wandlung starten.

von Philipp (Gast)


Lesenswert?

Hallo,

ok vielen Dank für die Antworten, ihr habt mir sehr geholfen!

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.