Würde das funktionieren? Ich bin mir theoretisch ziemlich sicher, dass es so sein sollte, aber ich sehe es nicht oft oder überhaupt nicht. Theoretisch sollte der Spannungsteiler von 2: 1 bis 1: 2 an einem Ende 3,3 V und am anderen Ende des Topfes 1,6 V liefern, was dem ADC einen weiten Arbeitsbereich bietet. Und wenn die Taste gedrückt wird, fungiert der R1 + RV als maximal 20.000 Pullup, sodass die Leitung auf 0 V herunterfällt, was vom ADC als eindeutiges Ereignis codiert werden kann, sodass sowohl eine Taste als auch ein Pot vorhanden sind auf demselben Eingangspin, sodass der ADC beide Zwecke erfüllen kann.
Ein Eingangs-Pin wird ohne wesentliche Codeänderungen gespeichert, da der ADC bereits für den Pot abgefragt wird.
simulieren Sie diese Schaltung - Schema erstellt mit CircuitLab
Würde das funktionieren, und wenn ja, aus Neugier, warum ist das nicht beliebter?
quelle
Antworten:
Ja, es sollte funktionieren, obwohl es einige Probleme gibt, auf die Sie achten müssen.
Das schwierige Problem ist, dass Sie vorsichtig sein müssen, um die Übergänge zwischen dem 0-V-Schalterpegel und dem Topfpegel zu erkennen und zu ignorieren. Einige von ihnen werden wie gültige Pot-Levels aussehen, daher müssen Sie mehrere Proben berücksichtigen, um zu entscheiden, ob ein Pot-Level real oder nur eine Zwischenspannung ist, während Sie zwischen dem Schalter und dem Pot schwenken. Denken Sie daran, dass echte Schalter abprallen, was schwieriger ist, als Sie sich wahrscheinlich vorstellen. Eine Sache, die Sie über eine gültige Topfspannung wissen, ist, dass sie sich nicht so schnell ändern kann. Dies sollte helfen, Zwischenwerte auszusortieren.
Ein weiteres Problem ist, dass Sie den Topf nicht lesen können, wenn der Schalter gedrückt wird. Mit diesem Setup können Sie nichts dagegen tun. Ob dies wichtig ist, hängt vom System ab und welche Bedeutung die Topfposition und ein gedrückter Schalter haben.
Ich kann nicht sagen, ob dies "oft" gemacht wird oder nicht. Pot Inputs an sich sind ungewöhnlich, aber natürlich existieren sie. Damit dieses Schema sinnvoll ist, müssen Sie über ein System verfügen, das sowohl eine Drucktaste als auch eine kontinuierliche Einstellung des Benutzers benötigt und bei dem Sie den zusätzlichen Stift wirklich wirklich nicht ausgeben möchten. Wenn dies der Unterschied zwischen dem Einbau in ein 28-Pin-Mikro oder der Verwendung eines 44-Pin-Mikros ist, würde ich es wahrscheinlich tun. Wenn ich noch andere Pins übrig hätte, würde ich das nicht tun, weil es besser ist, die Komplexität gering zu halten. Separate Stifte für den Topf und den Knopf werden einfacher und daher weniger wahrscheinlich, dass Fehler in der Firmware auftreten.
quelle
Ich habe ADCs ohne Probleme als Eingaben verwendet, in einer Topologie, die Ihrer sehr ähnlich ist.
Ich hatte keinen Poti, aber ich hatte einen Zwei-Widerstands-Teiler, um die Eingangsspannung zu reduzieren (es war bei einem ATxmega mit einem ADC-Eingang von maximal 2/3 Vcc) und einen Schalter, an den der Eingang gezogen werden konnte Boden.
Ich denke, es wird gut funktionieren.
Eine Sache, an die Sie wahrscheinlich denken sollten, ist, dass der Knopf Sie möglicherweise nicht vollständig auf den Boden bringt. Abhängig vom Schaltwiderstand haben Sie möglicherweise noch einige Millivolt am Eingang. Sie sollten also nicht davon ausgehen, dass das Drücken der Taste zu einem ADC-Wert von 0 führt, sondern zu einem ADC-Wert von <~ 10 Zählwerten oder so ungefähr ( teste das!).
quelle
Alle diese Antworten und ihre Kommentare sind gut und bieten viel Einsicht. Ich versuche zu sehen, wer das Kopfgeld verdient, wollte dies aber auch hinzufügen.
Ich habe einen detaillierten App-Hinweis zu genau dieser Sache gefunden. Nicht nur Schalter, sondern auch Schalter und ein Poti am selben ADC-Eingang. PDF-Version mit Grafiken
Der Artikel enthält Formeln (und eine Excel 2007-Tabelle zur Automatisierung) zur Auswahl der Vorspannungswiderstände und des Potis, obwohl der Beispielcode für einen Mikrocontroller nicht mehr verfügbar ist.
Hackaday Kommentar Thread zu dieser App Hinweis .
Mehr als eine Schaltfläche in derselben PIN ist auch eine gute Ressourcenfrage.
quelle
Dies funktioniert zum Erfassen der Position eines Topfes, der nicht mit Masse verbunden ist, oder mit anderen analogen Quellen, von denen Sie wissen, dass sie nicht in Bodennähe gehen, vorausgesetzt, es macht Ihnen nichts aus, eine ADC-Auflösung zu verlieren.
Im allgemeineren Fall werden viele analoge Sensoreingänge auf Masse bezogen und können unter bestimmten Umständen auf Masse gehen, sodass dieses Schema nicht verwendet werden kann. Viele analoge Quellen können auch Einwände gegen eine Erdung erheben - häufig durch Abgabe des magischen Rauches.
Diese Schaltung könnte verwendet werden, wenn Sie wirklich verzweifelt nach einem weiteren digitalen Eingang suchen und sich der Einschränkungen bewusst sind, aber ich würde sie nicht für den allgemeinen Gebrauch empfehlen.
quelle
Das sollte funktionieren. Aber du könntest es besser machen, weshalb ich bezweifle, dass es üblich ist.
Angenommen, Sie haben einen ADC mit vollem Bereich (0 bis 5 V), erhöht die Reduzierung von R1 und R2 Ihren Dynamikbereich und damit die Auflösung der Position des Potentiometers. Natürlich können Sie R2 nicht auf Null reduzieren oder verlieren die Unterscheidbarkeit einer Aktivierung des Schalters.
Es ist nicht so stromsparend wie es sein könnte. Wenn Sie sich einen Keramikkondensator leisten können, z. B. 10 nF, um ihn über den Schalter anzuschließen, können Sie Ihre Widerstände leicht um den Faktor 10 oder sogar 100 erhöhen und den Stromverbrauch entsprechend reduzieren. Der Kondensator trägt auch zur Genauigkeit und Wiederholbarkeit bei, indem er die vom ADC gesehene Spannung tiefpassfiltert und eine niederohmige Spannungsquelle bereitstellt. Und schließlich wird der Schalter entprallt (Sie wissen wahrscheinlich, dass fast alle mechanischen Schalter einen Kontaktsprung aufweisen, der bei einmaliger Bedienung schnell mehrere Male Kontakt aufnimmt und unterbricht und ein Entprellen entweder in Software oder Hardware erfordert). Wie bereits erwähnt, ist ein solcher Kondensator auch wichtig, um beim Drehen des Potentiometers ein genau definiertes Verhalten zu erzielen, da dies Transienten erzeugen kann, zumindest in Form einer intermittierend hochohmigen.
Mit einem solchen Kondensator ist C * R natürlich Ihre Zeitkonstante (wenn Sie also (1-e) ^ 3 Genauigkeit innerhalb von 0,1 s nach einer Schalterfreigabe wünschen, sollten Sie besser unter der Kombination von 10 nF und 3 Mega- bleiben. Ohm...)
Ihre Software erfordert einige Sorgfalt. Sie sehen Transienten sowohl vom Schalter als auch von mechanischen Bewegungen im Potentiometer. Es ist nicht schwer zu codieren, aber komplizierter als nur ein einzelnes ADC-Konvertierungsergebnis abzufragen. Sie müssen zumindest überprüfen, ob der von Ihnen gelesene Wert über mehrere Konvertierungen hinweg ausreichend stabil ist, um anzunehmen, dass Sie sich nicht in einem Übergang befinden.
Möglicherweise fügen Sie unnötige Komponenten hinzu:Wozu dient R1(vorausgesetzt, Ihr ADC-Eingangsbereich reicht bis zur positiven Schiene)?Wenn R1 die maximale Ausgangsspannung begrenzen soll, die in Ihren ADC-Bereich passt, warum wird das Potentiometer dann nicht von einer Referenzspannung an oder nahe unter der positiven ADC-Schiene gespeist? Das würde stattdessen einen Strombegrenzungswiderstand am Ausgang des Potentiometers erfordern, aber es wäre besser. Da eine solche analoge Versorgungsspannung leicht wesentlich stabiler sein könnte als die IC-Versorgungsspannung (von der ich annehme, dass Ihre 5-V-Batterie ein Symbol ist), können Sie bei Ihren ADC-Konvertierungen weniger technische Störungen verursachen.Und selbst wenn R1 nicht benötigt wird, um die maximale Ausgangsspannung zu reduzieren, bringt dieselbe Änderung der Schaltung in Kombination mit einer Umstellung auf eine analoge Versorgung, die so einfach sein könnte wie das Anschließen an +5 V an anderer Stelle, den kombinierten Vorteil von über und besser Ihren ADC-Eingangsbereich ohne zusätzliche Komponente zu nutzen.
quelle
Ich würde Spannungsteiler aus einem Grund nicht empfehlen:
Wenn Sie ein hochohmiges Gerät zum Messen anschließen, hat es einen aquivalenten Widerstand zwischen dem Gerät und einem Widerstand der Schaltung (parallele Äquivalenz), wodurch sich die Widerstandsbeziehung ändert.
Wenn Sie beispielsweise die Widerstände und den Poti auf 50-50% konfigurieren, beträgt der Wert beim Anschließen des Geräts 49-51%. Es wird sich aufgrund der hohen Impedanz des ADC nicht zu stark ändern, aber Sie verlieren an Genauigkeit. Ich meine, Sie können den ADC als einen weiteren Widerstand sehen, der den äquivalenten Widerstand ändert.
simulieren Sie diese Schaltung - Schema erstellt mit CircuitLab
quelle