Inhaltsverzeichnis:
- Schritt 1: Das Wesentliche (nicht wirklich)
- Schritt 2: Der Spannungsteiler
- Schritt 3: Spannungsteiler-Leiter
- Schritt 4: Zusammenfassung
Video: So lesen Sie viele Schalter mit einem MCU-Pin - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:23
Haben Sie schon einmal bei einem Projekt/einen Projekten getummelt und das Projekt wächst und wächst, während Sie ihm weitere Dinge hinzufügen (wir nennen das einen Feaping Creaturism)? In einem kürzlich durchgeführten Projekt baute ich einen Frequenzmesser und fügte einen Signalgenerator/Frequenzsynthesizer mit fünf Funktionen hinzu. Ich hatte bald mehr Schalter, als ich noch verfügbare Pins hatte, also was soll ein Mann tun?
Ich hatte jedoch bald sieben weitere Schalter an meiner Funbox (ja, so nannte ich meinen Funktionsgenerator … ich weiß, ich habe keine Kreativität) und hier ist eine kurze Anleitung, die Ihnen zeigt, wie Sie dasselbe tun können. Es erfordert keine Schieberegister oder spezielle ICs. Tatsächlich ist auch kein Mikrocontroller erforderlich, wenn diskrete Halbleiter verwendet werden. Hier ist eine Möglichkeit, mehrere Schalter mit einem einzigen Pin an Ihrem AVR (oder einem anderen Mikrocontroller …):)
Schritt 1: Das Wesentliche (nicht wirklich)
Um dies zu erreichen, benötigen Sie einige Komponenten. Es hilft, eine Vielzahl von Switches zu haben, die Sie verwalten müssen. Sie benötigen auch einige Widerstände und entweder einen Mikrocontroller mit ADC (Analog-to-Digital-Konvertierung) oder auf andere Weise, um anzuzeigen, dass ein Schalter aktiviert war und welcher Schalter es war.
Wenn Sie möchten, können Sie dies mit einem spannungsgesteuerten Oszillator anzeigen, möglicherweise mit einigen Blinklichtern oder alternativ mit Ton. In diesem 'ible werde ich so tun, als würden wir einen AVR verwenden, aber in Ihrer Welt können Sie so tun, als würden Sie alles tun, was Sie glücklich macht. Ich vermisse Bob Ross.
Schritt 2: Der Spannungsteiler
Im Wesentlichen verwenden wir dazu eine Technik und Schaltung, die als Spannungsteiler bezeichnet wird. Spannungsteiler teilen, wie Sie vielleicht vermutet haben, die Spannung V,, in,, durch einen von Ihnen bestimmten Wert. Sie können die Spannung mit mehreren Komponenten teilen, einschließlich Kondensatoren und Induktivitäten, aber hier werde ich es mit dem guten alten Widerstand tun. Die Idee Was wir tun, besteht darin, zwei Komponenten in Reihe zu schalten, die jeweils einzeln einen Spannungsabfall an der Komponente verursachen. Schauen Sie sich das erste Bild an, wenn ich keinen Sinn mache. Es besteht eine Potentialdifferenz von 9V von Schiene zu Schiene. Zwischen 9V und 0V liegen zwei Widerstände in Reihe. Jeder von ihnen wird je nach Widerstand einen Spannungsabfall über sich selbst erfahren, wie Sie sich wahrscheinlich von V = IR erinnern. Wenn Sie eine Spannungsmessung zwischen den beiden Widerständen vornehmen, erhalten Sie einen Wert zwischen 9 V und 0 V, je nachdem, wie viel Spannung am ersten Widerstand abgefallen ist und wie viel über dem zweiten Widerstand noch vor 0 V abfällt. Es gibt eine einfache Formel zur Berechnung des Spannungsabfalls an einem Widerstand in dieser Situation und sieht so aus. Die Spannung über Widerstand 1 (R1) sei V1 und die Spannung über Widerstand zwei (R2) sei V2. Da ich keine Formatierung mehr verwenden kann, sehen Sie sich Bild 2 unten für die Formel an … In unserem Widerstandsteiler kann die Vout-Spannung also durch unsere Formel für V2 bestimmt werden (da wir GND auf 0 V beziehen). Was hat das damit zu tun, dass eine Reihe von Schaltern von einem Pin erkannt werden? Nun, blättern Sie um und ich zeige es Ihnen!
Schritt 3: Spannungsteiler-Leiter
Nehmen wir nun an, wir haben alle unsere Schalter, vielleicht sechs oder acht oder sechzehn, alle über Widerstände verbunden, die jeweils als Spannungsteiler fungieren, so dass, wenn sich der Zustand des Schalterpins ändert, die Spannung gelesen wird und basierend auf dem Spannungspegel, wir wissen, welcher Schalter gerade aktiviert wurde. Schauen Sie unten. Im Bild unten habe ich zwei Schalterblöcke verbunden. Der oberste Block hat zwei Schalter und der unterste Block hat fünf Schalter. Sie können Ihre separaten Kipp-, Moment-, Tast- usw. Schalter auf die gleiche Weise anschließen. Das Wichtigste zu beachten ist der Widerstand, mit dem Ihr Schalter verbunden ist. In meinem Beispiel habe ich den Widerstand des nächsten Widerstands fast verdoppelt, um eine Spannungslücke zu erzeugen, die einfach zu messen ist und nicht mit dem Schalter davor oder danach verwechselt wird. Wenn Sie es noch nicht bemerkt haben, schauen Sie noch einmal hin und stellen Sie fest, dass wir wieder bei unserem alten Freund, dem ohmschen Spannungsteiler, sind. Der erste Widerstand, der 10 kOhm, ist mit 5 V verbunden und der zweite Widerstand - der Widerstand, der V. bestimmtaus für den SWITCH_ADC-Pin, mit jedem Schalter verbunden, und daher ist jedem Schalter eine bestimmte Vout-Spannung zugeordnet, die von dem ADC-Pin gelesen werden kann, der an SWITCH_ADC angeschlossen ist. Bestimmen Sie als Nächstes die erwartete Vout von jedem Schalter wie folgt
Vout = Vin * (R2 / (R1 + R2))
für Schalter eins:
Vout = 5V * (500 / (10000 + 500)) = 5*0,048 = 0,24V oder 240 mV
für Schalter zwei:
Vout = 5V * (2200 / (10000 + 2200)) = 5 * 0,18 = 0,9V oder ~900mV
und so weiter.. Fühlen Sie sich frei, R2 durch Ihre eigenen Werte zu ersetzen, wenn Sie nur bestimmte Widerstände zur Hand haben … Das Wichtigste hier ist, eine ausreichend große Spannungslücke zwischen den Schaltern zu halten, damit jede Fehlerquote am ADC auftritt Versetzen Sie Sie nicht in die Spannung, die von einem benachbarten Schalter erwartet wird. Ich habe festgestellt, dass es am einfachsten ist, die Teilerleiter zu bauen und ein Multimeter / Voltmeter auf den ADC-Pin zu legen und jeden Pin zu drücken und zu sehen, welche Werte Sie erhalten. Sie sollten ziemlich genau zu dem passen, was Sie berechnen. Sobald Sie alle erwarteten Spannungswerte von jedem Schalter mit einem bestimmten Widerstand haben, können Sie Ihre MCU den ADC-Pin lesen und mit Ihren bekannten Werten vergleichen, um festzustellen, welcher Schalter gedrückt wurde. Angenommen, Sie haben eine Interrupt-Service-Routine registriert, die aufgerufen wird, wenn eine Änderung am ADC-Pin erkannt wird. In diesem ISR können Sie den ADC lesen und diesen Wert mit Ihrer Switch-Tabelle vergleichen. Wenn Sie einen 8-Bit-ADC-Wert verwenden, wird Ihre Spannung in eine Zahl zwischen 0 und 255 umgewandelt, die einer Spannung zwischen 0 V und 5 V entspricht. Dies setzt voraus, dass Sie Ihren ADC auf diese Weise konfiguriert haben.
Schritt 4: Zusammenfassung
Jetzt sollten Sie also wissen, wie Sie mit GPIO-Pins für Switches sparsam umgehen. Immer wenn Ihnen die GPIO-Pins ausgehen oder kaum noch welche haben, oder wenn Sie feststellen, dass Sie eine Reihe von Schaltern verwenden werden, ist der Widerstandsteiler der richtige Weg, um Ihre GPIO-Pins zu sparen und gleichzeitig eine robuster Mechanismus zur Erkennung von Schalterzugriffen.
Empfohlen:
Einen Touch-Schalter mit einem Mosfet herstellen – wikiHow
Wie man einen Berührungsschalter mit einem Mosfet herstellt: WIE MAN EINEN BERÜHRUNGSSCHALTER MIT NUR EINEM MOSFET-TRANSISTOR HERSTELLTIn vielerlei Hinsicht sind die MOSFETs besser als normale Transistoren normaler Schalter mit dem h
So erhalten Sie Musik von fast jeder (Haha) Website (solange Sie sie hören können, können Sie sie bekommen Okay, wenn sie in Flash eingebettet ist, können Sie es möglicherweise nicht) BEARBEITET!!!!! Hinzugefügte Informationen: 4 Schritte
So erhalten Sie Musik von fast jeder (Haha) Website (solange Sie sie hören können, können Sie sie bekommen … Okay, wenn sie in Flash eingebettet ist, können Sie es möglicherweise nicht) BEARBEITET!!!!! Zusätzliche Informationen: Wenn Sie jemals auf eine Website gehen und ein Lied abspielen, das Sie mögen und es wollen, dann ist hier das anweisbare für Sie, nicht meine Schuld, wenn Sie etwas durcheinander bringen (nur so wird es passieren, wenn Sie ohne Grund anfangen, Dinge zu löschen) ) Ich konnte Musik für
So reparieren Sie einen Wechselrichter mit LCD-Hintergrundbeleuchtung. Mit einem Fujiplus FP-988D. für 0 $.: 9 Schritte
So reparieren Sie einen Wechselrichter mit LCD-Hintergrundbeleuchtung. Mit einem Fujiplus FP-988D. für $ 0.: In diesem anweisbaren werde ich Sie durch die Reparatur eines toten LCD-Hintergrundlicht-Wechselrichters mit den Teilen führen, die Sie haben. Sie können feststellen, ob Sie ein totes Gegenlicht haben, indem Sie zuerst andere Möglichkeiten ausschließen. Monitor auf mehreren Computern überprüfen. Stellen Sie sicher, dass
So kommunizieren Sie mit einem Alien-Artefakt oder . . .: 4 Schritte (mit Bildern)
Wie man mit einem außerirdischen Artefakt kommuniziert oder…: *** Enge Begegnungen der seltsam-minzigen Art. *** Dieses Instructable zeigt Ihnen, wie Sie eine Altoids-Version des Mutterschiffs "Close Encounters" bauen und damit interagieren. Dies kann ein wichtiges Training für den Tag sein, an dem das Bright White Be
LESEN SIE MICH ZUERST: So richten Sie den ultimativen Mac Mini Supercomputer ein - wikiHow
LESEN SIE MICH ZUERST: So richten Sie den ultimativen Mac Mini Supercomputer ein: Der Mac Mini ist im Grunde ein Laptop ohne Bildschirm und ohne Tastatur oder Maus. Sie würden sich denken, wer zum Teufel wird dieses Ding benutzen? Dieser Computer verbraucht jedoch weniger Strom als die meisten Glühbirnen, funktioniert hervorragend, und