Ich versuche, einen Knopf zu entprellen. Hier ist mein bisheriges Ergebnis nach dem Platzieren eines 1uF-Keramikkondensators parallel zum Taster:
Dies sollte als Eingang zu meinem Arduino 5V funktionieren, da es High hat: U > = Vht = 3,0 V und Low: U <= Vlt = 1,5 V.
Ich denke, das bedeutet, dass mein Arduino einen Schmitt-Trigger an seinen Eingangspins hat?
Ich möchte mein Triggersignal an einen anderen digitalen Eingang senden (einen Framegrabber, der mit der Aufnahme von Bildern bei steigender Flanke beginnt und bei fallender Flanke stoppt) und ich weiß nicht, ob er einen Schmitt-Trigger an seinem Eingang hat.
Ich suche daher nach einem Schmitt-Trigger-IC, der mein Signal TTL 5V digital aufräumen und machen kann.
Können Sie einen solchen IC empfehlen, der DIP (nicht oberflächenmontiert) ist und in kleinen Mengen gekauft werden kann?
Ich glaube, ich verstehe, wie ich mit dem Arduino entprellen könnte, indem ich die Zeit von der steigenden Flanke messe und dafür sorge, dass eine fallende Flanke nicht zu früh danach geliefert wird.
Ich würde es jedoch vorziehen, dies in Hardware für die Lernerfahrung zu tun. Es sei denn, das Software-Entprellen ist irgendwie besser als das Hardware-Entprellen.
Die alte Maxime „Garbage in, Garbage out“ klingt wahr. Selbst wenn es sich um einen "perfekten" Schalter handelt, möchten Sie immer noch überprüfen, ob die Eingabe Ihren Erwartungen entspricht. Das einmalige Lesen des Zustands bedeutet, dass Transienten wie ESD oder Blitzschlag als gültiger Tastendruck interpretiert werden können. Was wir wirklich tun möchten, ist, die Eingabe über einen bestimmten Zeitraum mehrmals zu lesen, um sicherzustellen, dass die Eingabe das ist, was wir denken. Je öfter wir es lesen, desto sicherer können wir uns sein. Wenn wir die Eingabe alle 10 ms lesen und zählen, wenn wir jedes Mal 5 gleiche Eingaben erhalten, ist die Wahrscheinlichkeit, dass sich der Schalter tatsächlich in einem bestimmten Zustand befindet, viel höher als wenn wir ihn ein- oder zweimal lesen. Dadurch wird auch ein mechanischer Schalter entprellt. Sie können diese Methode erweitern, um sicherzustellen, dass der Schalter für eine bestimmte Zeit aktiv ist, um die Auswirkungen von Vibrationen oder falschem Drücken herauszufiltern.
Im Allgemeinen sollten Sie alle Eingaben von der Außenwelt filtern – Transienten sind an der Tagesordnung. Ein Lesen eines GPIO ist eine Momentaufnahme von wenigen Nanosekunden - ein Transient kann den gelesenen Wert leicht "fotobomben". Dies ist auch ein Grund, warum Sie die Verwendung von Schaltern und externen Signalen bei externen Interrupts vermeiden sollten.
Was einen Vorschlag für ein Schmitt-Trigger-IC betrifft, so etwas wie ein 74HC14 ist ziemlich verbreitet.
Jede Hardwarelösung zum Entprellen beinhaltet eine bestimmte Zeitlatenz, welche Zeit T zwischen Tastendrücken wird als Prellen oder als zweites Drücken angesehen?
Sobald Sie diese Zeit T haben, besteht die einfachste Methode zum Entprellen darin, die Schaltfläche einmal alle T in der Software abzufragen.
Es gibt viele kompliziertere Schemata, die Sie im Internet finden können, die häufiger abtasten und Aufwärts- und Abwärtszähler implementieren, aber sie bieten Ihnen nicht wirklich viele Vorteile gegenüber der einfachsten Umfrage bei jedem T.
Eugen Sch.
Papst
Robert Bristol-Johnson
Andy
Robert Bristol-Johnson
Robert Bristol-Johnson
Andi aka
Robert Bristol-Johnson
Andy
Robert Bristol-Johnson
Nur ich
Andy
Andy
mkeith
Andy
mkeith
Nur ich
Andi aka
Andy
Andi aka
Nur ich
Russell McMahon