Nachdem ich mich eine Weile mit Software-Entprellung beschäftigt habe, finde ich, dass es eine enorme Belastung für das System darstellt, also dachte ich daran, zunächst einen Hardware-Entpreller mit einem Schmitt-Trigger (74HC14), einem Kondensator, einem Knopf und einem Widerstand zu bauen, wie unten von talkelectronics.com gezeigt :
Aber ich habe gelesen, dass der Schmitt-Trigger halb so unangenehm ist wie ein normaler Wechselrichter, wenn er bestimmt, wann ein High oder Low ausgegeben werden soll, weil er den Zustand bei der 33%- und 66%-Marke wechselt, während ein normaler Wechselrichter näher an der 50%-Marke schalten würde (aber bei der HC-Version sind es wohl eher 55%).
Ich habe mich gefragt, da der Schmitt-Trigger aus sechs Invertern in einem Gehäuse besteht und sich das Entprellen mit einer beliebigen Taste meiner Wahl, die auf den ersten Eingang angewendet wird, erheblich verbessern würde, wenn ich sechs der Schaltung auf der rechten Seite mit denselben Komponentenwerten herstellen und alle anschließen würde davon in Serie? (Beispiel: Ausgang der ersten Schaltung zum Eingang der zweiten Schaltung, wo sich Kondensator und Widerstand treffen.)
Die Verwendung von Schmitt-Triggern in Reihe würde den Rückprall nicht weiter reduzieren.
Betrachten Sie den Filter:
Die Eingabe ist (U). Die rote Linie ist eine 50 %-Schwelle, deren Ausgabe als Signal (A) angesehen wird. Es springt jedes Mal, wenn der Eingang kreuzt.
Die grünen Linien sind ungefähr 33 % und 66 %, wie Sie gesagt haben. Aber der Ausgang (B) schaltet nur, wenn der Eingang (U) von einer grünen Schwelle zur anderen geht.
Am wichtigsten ist, dass der Ausgang entweder vollständig HIGH oder LOW (digital) ist. Wenn also der Ausgang eines Schmitt-Triggers in den Eingang eines anderen eingespeist würde, gäbe es im Wesentlichen keinen Unterschied.
Nehmen Sie die gefilterte Ausgabe von oben (B) und überlegen Sie, wie sie von einem anderen Schmitt-Trigger gesehen würde:
Auch hier wäre der Ausgang des ersten entweder HIGH oder LOW. Es würde also die Schwellenwerte gleichzeitig überschreiten, was zu derselben Ausgabe wie der Eingabe führt. Es gibt nichts zu entprellen! Wenn überhaupt, würde ich erwarten, dass es mehr Lärm erzeugt, weil Sie mehr Komponenten und damit mehr Raum für Fehler einführen.
Es hört sich so an, als ob Sie nach einem Schmitt-Trigger mit einstellbaren Schwellenwerten suchen. Einige sind symmetrisch (zum Beispiel: 33 % und 66 % oder 10 % und 90 %). Andere sind nicht symmetrisch (zum Beispiel: 33 % und 80 %). Sie können Ihre eigenen mit einem Operationsverstärker erstellen.
Versuchen Sie, mit dieser Simulation herumzuspielen, die ich vor einiger Zeit zusammengestellt habe: Schmitt-Trigger-Simulation - Non-Inverting Non-Symmetric
Können mehrere Schmitt-Trigger in Reihe einen Schalter vollständig entprellen?
Zur Entprellung kann ein einzelner Schmitt-Trigger mit vorgeschaltetem Analogfilter verwendet werden. Nach diesem Schmitt-Trigger ist das Signal jedoch vollständig digital. Daran ändern auch zusätzliche Schmitt-Trigger nichts. Idealerweise bewahren sie das Signal.
In einem separaten Thema sollte das Entprellen in der Firmware keine große Last darstellen. Der übliche Weg besteht darin, den Schalterzustand in einem periodischen Interrupt abzutasten, den Sie sowieso bereits haben. Sie erklären den entprellten Zustand zum aktuellen Schalterwert, wenn Sie den Schalter in diesem Zustand für N aufeinanderfolgende Samples gesehen haben. Normalerweise muss der Schalter 50 aufeinanderfolgende 1-ms-Interrupts im selben Zustand sein, damit der neue Zustand als gültig angesehen wird. Dies nimmt normalerweise einen sehr kleinen Bruchteil der gesamten Prozessorzyklen in Anspruch.
Bort
Mike – Nicht mehr hier
Wouter van Ooijen
Rohr
Graham
Mike – Nicht mehr hier
Dmitri Grigorjew
Rohr
Graham