ATMega128 A/D schwebend

Ich arbeite mit einem ATMega128-Mikro, das mit einem Joystick (Poti im Schema unten) arbeitet, der einen 0,25-4,75-V-Ausgang mit einer Ausgangsimpedanz von 2 Ohm hat (Joystick-Teilenummer lautet: ch products ts-2-r-1-u- 05-a). Wenn die Leitung zwischen dem Topf und dem 33-kOhm-Widerstand entfernt wird, während die Platine eingeschaltet ist, schwebt die Spannung jedoch für eine gewisse Zeit (etwa 20-30 Minuten) bei ~ 0,5 V, bevor sie vollständig heruntergezogen wird. Ich dachte, dass der 499-kOhm-Widerstand ihn effektiv herunterziehen sollte, aber irgendetwas scheint daran nicht ganz richtig zu sein.

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Hat jemand eine Idee, warum es nicht sofort und vollständig abreißen würde? Ich habe es auf einem Oszilloskop beobachtet und es schwebt eine ganze Weile um diese 0,5-V-Marke. Zu beachten ist auch, dass ich derzeit den 499-kOhm-Widerstand zum Testen auf die 0,01-uF-Kappe huckepack stecke.

Ihre R2 / C1-Schaltung hat eine Zeitkonstante von etwa 5 ms. Wenn Ihr Eingang also nicht innerhalb von etwa 30 ms auf Masse zurückkehrt, treibt auch etwas anderes den Knoten an. Hast du vielleicht die internen Pullups der MCU aktiviert?
@Curd ist die Teilenummer des Joysticks als Referenz. Dachte, es könnte nützlich sein, es aufzunehmen.
@svens Ich werde das untersuchen, aber ich glaube, der ATMega128 deaktiviert Pullups im A / D-Modus. Die 499.000 waren ursprünglich nicht da, also habe ich sie letzte Nacht (huckepack auf die Kappe) hinzugefügt, und sie würde für nichts herunterziehen. Lassen Sie es über Nacht eingeschaltet, und heute Morgen funktionierte es jedes Mal, bis ich es wieder aussteckte. Ich bin mir nicht sicher, was da los ist, aber ich werde mir die Klimmzüge ansehen.
@biggidvs: Warum sagst du dann nicht, dass dies eine Teilenummer ist? Es ist überhaupt nicht offensichtlich. Übrigens: Da Sie sich über das Verhalten der Schaltung wundern, wenn der Joystick nicht angeschlossen ist, wie kann es überhaupt eine Rolle spielen?
@Curd versucht nur, alle Informationen aufzunehmen. Wenn Sie den Joystick von dieser Leitung trennen, wird die Spannung nicht heruntergezogen. Da es Teil meiner Schrittfolge zum Replizieren des Problems ist, habe ich es aufgenommen. Ich werde es bearbeiten, um eine Teilenummer anzuzeigen.
@biggidvs: Wie hast du die Spannung am Knoten "A/D" gemessen? 499k ist ein ziemlich hoher Widerstand. Ihr Finger, der zwei Linien berührt, kann einen Widerstand haben, der ein Bruchteil (1/20 oder sogar weniger) davon ist.
Eine andere Möglichkeit ist, dass R2 nicht richtig angeschlossen ist.
Ja, das habe ich mir gedacht und es mehrmals (wahrscheinlich 20 oder 30) Mal neu gelötet. Es ist schwierig, den Widerstand von dieser Leitung zur Erde zu messen, wenn diese Kappe da ist (sie schwebt gerne ein bisschen). Ein Teil von mir möchte die Kappe entfernen und von dort aus weitermachen. Es ist nur eine Art Filter ... könnte ein bisschen mehr Rauschen verursachen, aber würde es mir ermöglichen, das Problem vielleicht zu sehen.
Ist Ihre Erdungsverbindung tatsächlich gut (niedrige Impedanz) dieser Kappe und dieses Widerstands? Ich habe seit einigen Stunden ein Via, das mich nervt, weil es keinen richtigen Kontakt hergestellt hat ...
@Arsenal ja, ich habe 0,2 Ohm von der Masse der Kappe / des Widerstands bis zur Masse, die auf die Platine kommt.

Antworten (1)

Sie scheinen davon auszugehen, dass der ATmega selbst keinen Einfluss auf die Knotenspannung hat.

Wenn Sie sich das Datenblatt ansehen, wird der Eingangsleckstrom in beiden Richtungen mit bis zu einem Mikroampere angegeben.

Ein Mikroampere über 499K ist ein halbes Volt.

Dies könnte die Erklärung für das tatsächliche Problem sein, das Sie sehen, oder auch nicht, aber es ist ein Beispiel für eine ungültige Designannahme - unabhängig davon, ob dies der Fall ist oder nicht, es ist eine Situation, die vom Datenblatt vollständig zugelassen wird, und daher ein Design Fehler anzunehmen, dass es nicht passieren wird.

Richtig, ich sehe das und es scheint, dass es daher kommen könnte. Ich kann einige kleinere Widerstandswerte erhalten und diese ausprobieren, um zu sehen, ob sie stärker nach unten gezogen werden, und um dem Einfluss des Knotens zu entkommen. Mit dem Serienwiderstand von 33 kOhm muss ich jedoch für den Pulldown darüber bleiben, richtig?
Vielleicht solltest du dich zurücklehnen und darüber nachdenken, warum es dich interessiert? Versuchen Sie, einen fehlenden Joystick zu erkennen? Wenn Ihre Spezifikation des Joysticks korrekt wäre, könnten Sie dem Vorwiderstand ohne große Wirkung stärkere Vorspannungswiderstände vorschalten, aber Ihre Spezifikation für den Joystick ist einfach nicht glaubwürdig, es sei denn, er hat einen Pufferverstärker.
Ja, ich versuche festzustellen, ob es nicht angeschlossen ist usw. Wenn beispielsweise ohne Pulldown der Joystick ausgesteckt wird, wenn er ~ 3 V anzeigt, schwebt die Leitung bei 3 V, da es keinen Pfad zur Erde gibt. Aus diesem Grund füge ich einen Pulldown hinzu (um ihn aus dem Betriebsbereich zu ziehen, um einen Fehlermodus zu erkennen). Der 33k-Widerstand ist bereits vorhanden, also versuche ich, ihn so gut wie möglich zu umgehen. Wusste nicht, ob ein kleinerer Pulldown das bewirken würde oder nicht.
Wenn Sie den Joystick wirklich erkennen möchten, müssen Sie möglicherweise regelmäßig Stromimpulse injizieren und feststellen, dass ihre Wirkung begrenzt ist, oder die Versorgung des Joysticks ein- und ausschalten und prüfen, ob der Messwert reagiert. Aber Sie müssen die RC-Zeitkonstanten sorgfältig synchronisieren und verwalten, um sicherzustellen, dass die Messwerte, die Sie für Daten verwenden, nicht durch die Anwesenheitserkennungsvorgänge beeinflusst werden.
Sie glauben also, dass ein kleinerer Pulldown die Ausgabe des Joysticks verändert?
Der Wechsel zu einem 100k-Widerstand behebt das Problem und zieht sofort nach unten ... jetzt ist es an der Zeit, das Ausgabeproblem zu beheben.
Behoben durch Ändern von 33k auf 1k und 100k Pulldown, wodurch der größte Teil des Effekts des Spannungsteilers eliminiert wurde. Wird den endgültigen Schaltplan mit der Antwort aktualisieren. Der ATMega wirkte sich auf den Knoten aus und verursachte Probleme. Es ging also nur darum, den Leckstrom mit dem Spannungsteiler auszugleichen!