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
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
Und dann gibt es noch ADCs, die haben bei ueberschnellem Ablesen einfach weniger genaue Bits.
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.
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.
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.