Hallo, ich will zwei Stromsensoren auslesen, einen für kleinen und einen für große Ströme. Nun nutze ich einen Interrupt von 100ms Sollte man jetzt einfach immer beide ADC Eingänge einlesen und in zwei getrennte Arrays schreiben? Oder irgendwie in Abhängigkeit der Werte mal den Einen oder nur den anderen benötigten ADC einlesen? Wie sie blockiert das den Controller...oder ist das lesen der zwei ADc unproblematisch
gerald schrieb: > Sollte man jetzt einfach immer beide ADC Eingänge einlesen und in zwei > getrennte Arrays schreiben? Wo ist dein Code? > Oder irgendwie in Abhängigkeit der Werte mal den Einen oder nur den > anderen benötigten ADC einlesen? Was ist deine Anforderung? Was ist der Plan? > Wie sie blockiert das den Controller...oder ist das lesen der zwei ADc > unproblematisch Was für ein Controller? Welcher ADC? beste grüße public
wo wäre der unterschied?!? Warum ist die beschaltung des ADCs wichtig..wenn ich wie geschrieben beide eingänge benutze!? für beide Kanäle?! Die Anfroderung hatte ich ja genannt ..alle 100ms Werte einlesen... Wenn es welche gibt, dann bitte nennen, dann kann ich ja was anderes als z.B. den Xmega oder STM32 z.B. einsetzen..
Für sowas benutze ich meistens den 'ADC Fertig' Interrupt, der etwa folgendes macht: 1. Derzeitigen Stand des Multiplexers einlesen und per switch/case die einzelnen Kanäle behandeln. 2. in jedem case den Wert vom ADC holen und in die entsprechende (globale) Variable speichern. 3. Multiplexer auf den nächsten Kanal setzen und das switch-case verlassen. 4. ADC starten und die ISR verlassen.
@ gerald (Gast) >ich will zwei Stromsensoren auslesen, einen für kleinen und einen für >große Ströme. Mit welcher Schnittstelle? SPI, I2C? >Nun nutze ich einen Interrupt von 100ms Hoffentlich richtig mit einem Flag für die Hauptscheife, siehe Interrupt. >Sollte man jetzt einfach immer beide ADC Eingänge einlesen und in zwei >getrennte Arrays schreiben? Kann man machen. >Oder irgendwie in Abhängigkeit der Werte mal den Einen oder nur den >anderen benötigten ADC einlesen? Geht auch. >Wie sie blockiert das den Controller... Im Regelfall nicht. >oder ist das lesen der zwei ADc unproblematisch Welche 2 ADC? Am Anfang ging es noch um Stromsensoren, welche AUSGELESEN werden sollen. >wo wäre der unterschied?!? >Warum ist die beschaltung des ADCs wichtig..wenn ich wie geschrieben >beide eingänge benutze!? für beide Kanäle?! >Die Anfroderung hatte ich ja genannt ..alle 100ms Werte einlesen... Lies mal ganz DRINGEND was zum Thema Netiquette !!! Wir können und wollen nicht hellsehen!
Danke Matthias..werde ich nachher mal so weiter verfolgen @Falk...so wie ich schrieb..zwei Sensoren auslesen..und ADC... Also analoge Sensoren am ADC angeklemmt...
Hallo Gerald, was willst du eigentlich hören? Du hast noch keinen Controller gewählt, oder? Suchst du einen Controller? Du hast noch kein Konzept zum Einlesen von ADC-Werten, oder? Suchst du ein Konzept? Hast du Fragen zum Interrupt (blockieren?)? Stell sie. ABer schmeiß keine Brocken hin, die keiner verstehen kann.
@gerald (Gast) >@Falk...so wie ich schrieb..zwei Sensoren auslesen..und ADC... >Also analoge Sensoren am ADC angeklemmt... Denkst du, dass wir uns vor deinem Geschreibsel in den Staub werfen? Wenn einer schreibt, "zwei Stromsensoren auslesen", dann vermutet der Fachmann, dass es sich um aktive Sensoren handeln, welche über SPI, I2C oder eine ähnliche Schnittstelle AUSGELESEN werden. DU hast aber nur einen Sensor, der eine Spannung ausgibt, welche mit dem (internen?) ADC deines Mikrocontrollers gemessen wird. Diesen Vorgang bezeichnet man keinesfalls als "Sensor auslesen". Wenn man alle 100ms zwei ADC-Kanäle lesen will, ist das im allgemeinen Peanuts, so ein Lesevorgang dauert ein paar Dutzend Mikrosekunden. Da muss man nicht groß optimieren und man braucht auch selten einen ADC-Interrupt dazu.
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.