Hallo!
Ich habe eine Digitalschaltung und durch das Prellen des
Tasters funktioniert die nicht richtig.
ja, wenn es eine Schaltung ist, die irgend was zählt oder anderweitig
auf Einzelimpulse bzw. einzelne Impulsflanken angewiesen ist, dann
gibt’s ärger. Je nach Konstruktion und Qualität des Schalters könne
1…20ms vergehen und bis über 100 Impulse ausgelöst werden, ehe sich
der Kontakt Ruhe gibt.
Bei der Suche im
Internet fand ich heruas, dass Taster mit einem RS-FlipFlop
entprellt werden sollen.
Das ist die sicherste und schnellste Variante, die allerdings
gravierenden Nachteil hat, daß man einen Wechselkontakt braucht
(der ist natürlich meist nicht vorhanden).
Wenn Du also wirklich zuverlässig Hardwareentprellung haben möchstest,
dann empfehle ich schon diese Variante.
Das hat dann auch funktioniert, aber
ich meine mich daran zu erinnern, das ich einmal in der Schule
gelernt habe, wie man mit einem CR-Glied und einer Diode auch
Taster entprellen kann (nicht RC-Glied).
Na die einfache Variante ist schon ein einfaches R-C-Glied.
Ich nehme mal einen MOS-Eingang eines Logikgatters an
(z.B. 74HCxx oder auch 74HCTxx oder auch 4xxx-Serie).
Der mech. Schaltkontakt kann dann über einen Vorwiderstand und
nachfolgend ein C am Gattereingang entprellt werden.
Da der Eingang des MOS-Gatters sehr hochohmig ist und keinen
eigenen Pegel führt, muß noch ein Pull-Up-Widerstand vorgeschaltet
werden (z.B. 10kOhm gegen +Us).
Aufbau also so:
- Schaltkontakt mit ein Pin an Masse, das andere an die Entprellschaltung
- dann Pull-UP am Vorwiderstand und an +US
- hinter dem Vorwiderstand das C gegen Masse und dann zum Gatter
Der Vorwiderstand kann bei MOS-Eingängen hochohmig sein (100k…1M).
Dadurch ist ein kleines C möglich (z.B. 100nF).
Die Zeitkonstante muß so groß sein, daß die Entprellung zuverlässig
ist.
Wenn der Kontakt offen ist, wird das C also über Pull-Up und
Vorwiderstand geladen. Wenn der Kontakt schließt, wird das C nur
über den Vorwiderstand entladen. Da die Spannung am C nicht springen
kann, werden die Impulse vom Taster „verschluckt“.
Um die Sache noch zuverlässiger zu machen, wäre ein Triggereingang
mit Hysterese zweckmäßig. Man kann das evtl. auch durch eine
Rückkopplung mit einem entsprechend hochohmigen Widerstand
machen (von einem nichtinvertirenden Gatterausgang zum Eingang).
Andere Möglichkeiten der Entprellung gehen mit einem
retiggerbaren Monoflop.
Weitere Schaltungsmöglichkeiten arbeiten auch mit C und R in
Rückkopplung über ein Gatter (Impulsverzögerungsschaltung).
Bei Anwendung mit bipolaren Gattereingängen (also Standard TTL oder
ähnliches (74xx bzw. 74LSxx usw.) kann auf den Pull-Up verzichtet
werden (muß aber nicht, macht die Sache immer etwas zuverlässiger).
Der Vorwiderstand muß dann entprechend klein sein und das C dann
gößer (kleiner ELKO).
Falls an der Schaltung irgend wo noch ein Prozessor dranhängt,
ist natürlich eine softwaremäßige Entprellung einfacher.
Schaltungen habe ich in meiner Sammlung und aknn ich Dir bei Bedarf schicken.
Gruß Uwi