wie kann ich die abtastzeit von 3 im atmega128 16mhz verwendeten adc berechnen? die adc kanäle werden nacheinander abgetastet und die werte über printf ausgegeben
Hallo, schau doch mal im Datenblatt, beginnend von Seite 230, unter "Analog to Digital converter". Je nach Konfiguration des ADC kannst Du auch einen Interupt auslösen lassen wenn der ADC fertig ist. Lebe lang und in Frieden. Spock
:-) meine natürlich 16MHz es geht um die dokumentation von meinem projekt, von daher suche ich eine möglichkeit die abtastzeit zu berechnen.
Warum schaust du nicht in deim Projekt nach, wir habe es leider nicht zum schauen. Wenn du nach jeden auslesen von ADC ein Printf machst, dann braucht das printf mehr zeit als die Wandlung selber.
Hallo, mit 16 MHz wird dein ADC wohl nicht laufen, da er einen Vorteiler besitzt, der sinnvollerweise gemäß Datenblatt so eingestellt wird, dass der ADC nicht zu schnell (und damit zu ungenau) wird. Ich gehe mal davon aus, dass der ATmega128 den gleichen ADC verbaut hat, wie der ATmega8 - hier dauert eine Wandlung 13 ADC-Takte. d.h. Wandlungszeit von 1 Kanal in Sekunden:
1 | Wandlungszeit = (1 / CPU-Takt) * ADC-Vorteiler * 13 |
Gruß David
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.