Hi, wenn ich hier an meinem STM32F Analogwerte per ADC lese, so haben diese, wenn die Einangspins einfach nur offen sind, irgendwie zufällige Werte, die zwar jeweils fix aber bei jedem ADC anders sind. Lege ich Sie gezielt auf 0 oder 5V, dann haben alle ADCs identische, den Eingangspannungen entsprechende Werte. Das lässt mich vermuten, dass die ADC-Eingänge auch irgend eine Art von Pull-up- oder -down benötigen. Meine Frage: was hänge ich da am besten rein? Einfach nur einen simplen 10K-Widerstand gegen Masse? Oder was wäre eine clevere Lösung? Danke!
Wer viel misst, misst viel Mist. Wieso solltest du die Eingangsspannung von offenen Pins lesen? Das kommt ja ganz auf die Schaltung dahinter an, ob das sinnvoll ist oder nicht. Zum Einlesen von Schaltern habe ich mal den Schalter als Spannungsteiler beschaltet mit Pull-Up vorm Schalter und dann die beiden Ausgänge (NO, NC) zu anderen Widerstandswerten. So konnte ich per ADC die Schalterstellung auswerten, und wenn der Stecker vom Schalter nicht eingesteckt war, gabs dann V_ref über den Pull-Up. Kann man auch auf unzählige Arten anders beschalten.
Wenn der Eingang offen ist, macht eine Messung doch auch keinen Sinn. Man ignoriert den Eingang also einfach (wenn der ADC den dennoch abtastet)?! Ein Pull-Up/Down ist also recht überflüssig. Es sei denn, man weiß nicht, ob er offen ist. Dann könnte man natürlich einen Pull-Down anschließen, und aus ADC-Wert ca. 0 schließen "Eingang offen", aber wenn bei einem tatsächlich genutztem Eingang der Bereich bis 0V herunter relevant ist, ist's wieder Essig. Wenn man offenen Eingänge zuverlässing erkennen will, muss man wohl sehr hochohmige schaltbare Pull-Up/Down-Widerstände anschließen und dann mal mit, mal ohne messen. Und wie groß? Tja, das hängt von der Quellimpedanz ab ... Aber mit 50 bis 100kOhm dürfte man ganz gut hinkommen. Die Werte sind übrigens sicher nicht "fix", sondern dürften (langsam) schwanken, und stark vom Layout und benachbarten Leiterbahnen abhängen.
Andreas B. schrieb: > Ein Pull-Up/Down ist also recht überflüssig. Es sei denn, man weiß > nicht, ob er offen ist. Das ist der Punkt, bei der endgültigen Lösung weiß die Firmware nicht, ob der Eingang vom Anwender beschaltet wurde, oder nicht. > Die Werte sind übrigens sicher nicht "fix", sondern dürften (langsam) > schwanken, und stark vom Layout und benachbarten Leiterbahnen abhängen. Ja, es geht immer ein paar Bytes hin und her, aber der eine Eingang liefert z.B. Werte um die 735 und der andere um die 2100, im Vergleich untereinander sind die also ungefähr fix.
Chris schrieb: >> Ein Pull-Up/Down ist also recht überflüssig. Es sei denn, man weiß >> nicht, ob er offen ist. > > Das ist der Punkt, bei der endgültigen Lösung weiß die Firmware nicht, > ob der Eingang vom Anwender beschaltet wurde, oder nicht. Ja, dann solltest Du wirklich einen Pullup oder Pulldown einbauen.
Oder einfach die internen Pull-Widerstände nehmen? Immerhin sind ja bei den Analogwerten die Signalflanken eher unkritisch. Soweit ich mich erinnere, steht auch in den Datenblättern, dass man den Analogmodus mit den Pull-Widerständen kombinieren kann.
Harald W. schrieb: > Chris schrieb: >> Das ist der Punkt, bei der endgültigen Lösung weiß die Firmware nicht, >> ob der Eingang vom Anwender beschaltet wurde, oder nicht. > > Ja, dann solltest Du wirklich einen Pullup oder Pulldown einbauen. Einen Pullup- oder Pulldown-Widerstand, der dann - wenn es drauf ankommt - die zu messende Quelle belastet und das Messergebnis entsprechend verfälscht...
Joe L. schrieb: > Einen Pullup- oder Pulldown-Widerstand, der dann - wenn es drauf ankommt > - die zu messende Quelle belastet und das Messergebnis entsprechend > verfälscht... Vermutlich reicht da ein Pull-R im Megohm-Bereich. Wenn der dann schon stört, sollte man sein Konzept überdenken.
Alex R. schrieb: > Soweit ich mich erinnere, steht auch in den Datenblättern, dass man den > Analogmodus mit den Pull-Widerständen kombinieren kann. Leider nein. In CubeMX ist diese Option für Analogeingänge deaktiviert.
Alex R. schrieb: > Oder einfach die internen Pull-Widerstände nehmen? > Soweit ich mich erinnere, steht auch in den Datenblättern, dass man den > Analogmodus mit den Pull-Widerständen kombinieren kann. Nein, in den RMs steht ausdrücklich, das die im Analog-Modus hardwaremäßig deaktiviert werden. Hatten wir gerade von ein paar Tagen ...
Andreas B. schrieb: > Nein, in den RMs steht ausdrücklich, das die im Analog-Modus > hardwaremäßig deaktiviert werden. Hatten wir gerade von ein paar Tagen It's not a bug - It's a feature!
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.