../../../icons/Logo.pngPraktische Elektronik

Entprellter Taster, Reset

Attention idea

Takt manuell erzeugen

Dynamische Digitalschaltungen laufen mit sehr hohen Frequenzen, mit vielen Millionen Taktimpulsen pro Sekunde. Den Ablauf derartiger Schaltungen können wir nicht verfolgen.

  • Wir brauchen einen Takt der langsam, Schritt für Schritt abläuft.
  • Wir müssen einen Taktimpuls manuell auslösen können: per Taster.

Einzelne Impulse mit einem Taster zu erzeugen ist nicht so simpel, wie es auf den ersten Blick aussieht. Wir sehen uns Schaltungen an, die saubere Taktimpulse erzeugen.

Dynamische Digitalschaltungen müssen meistens beim Einschalten automatisch zurückgesetzt werden. Wie dieses erzeugt wird, betrachten wir am Schluss.

Schalter prellen

Jeder mechanische Schalter schaltet nicht perfekt. Beim Schließen des Kontakts hüpft dieser einige Male - schließt - öffnet, bis er ganz geschlossen ist. Dieses sogenannte Prellen wird von Digitalschaltungen als eine Folge von Impulsen wahrgenommen. Wir wollen dagegen nur einen Impuls erzeugen, der Kontakt soll entprellt sein.

Wir kennen bereits aus NAND-Gatter mit Gedächtnis wie ein Taster entprellt wird. Dieser Schaltung stellen wir eine zweite Variante gegenüber.

Entprellter Taster mit RS-Flip-Flop

In NAND-Gatter mit Gedächtnis haben wir bereits gesehen, wie ein Taster entprellt werden kann.

Taster-entprellt-RS_s.png
Bild 1: Entprellen mit einem RS-Flip-Flop

Die Schaltung in mit zwei NAND-Gattern wird öfter angewandt als die mit integrierten R-S-Flip-Flops, weil meistens nur ein oder zwei Taster entprellt werden müssen.

Wir benötigen einen Taster mit Umschalter und ein RS-Flip-Flop oder zwei Gatter. Die Schaltung ist sehr aufwändig. Sie hat dafür den Vorteil, sehr zuverlässig zu sein.

Entprellter Taster mit Kondensator

Kontakte prellen wenige Millisekunden. Wenn wir die Zeit nach dem Schließen eines Kontakts ausblenden, können wir das Pellen unterdrücken. Die Schaltung enthält zwei Widerstände und einen Kondensator.

Taster-entprellt.png
Bild 2: Entprellter Taster
Attention :-(

So geht's nicht

Leider haben wir die Rechnung ohne CMOS gemacht.

CMOS-Bausteine regieren unwillig auf langsam steigende und fallende Spannungen am Takteingang. Sie halten diese meistens für mehrere Taktimpulse.

HC-CMOS erwartet, dass der Takt in maximal 400ns schaltet.

Entprellter Taster mit Schmitt-Trigger

Die Lösung des Problems ist ein Schmitt-Trigger. Eine Schmitt-Trigger-Schaltung schaltet bei langsam ändernden Spannungen korrekt.

Taster-entprellt-Schmitt-Trigger.png
Bild 3: Entprellter Taster mit Schmitt-Trigger

Die Schaltung in Bild 3 zeigt einen entprellten Taster mit Kondensator und Schmitt-Trigger. Der 74HC14 enthält sechs invertierende Schmitt-Trigger. Deshalb gibt die Schaltung in Bild 3 gibt eine 0 aus, wenn der Taster betätigt wurde.

  • Es gibt CMOS-Bausteine, die am Takt-Eingang einen Schmitt-Trigger haben. Er wird durch das Symbol im Gatter des Schnitt-Triggers gekennzeichnet.

Funktionsweise

Der Ausgang wird an den Takteingang einer Schaltung gelegt. Der Kondensator C1 liegt damit parallel zum Takteingang. Er bewirkt eine gewisse Verzögerung, die auch von den Widerständen R1 und R2 abhängt.

Schaltungen mit Kondensator und Widerstand werden in So funktioniert's beschrieben.

Wenn für längere Zeit (0,1s) der Taster nicht betätigt wurde, wird durch den Widerstand R2 der Ausgang auf 0V, logisch 0 gehalten.

Wenn der Taster schließt, wird der Kondensator C1 über den Widerstand R1 auf 5V aufgeladen, also der Ausgang auf logisch 1 gelegt. Wenn der Taster öffnet, sinkt die Spannung am Kondensator bis auf 0V ab. Die Zeit bis der Kondensator über R1 aufgeladen ist, beträgt etwa t1=R1*C1=10kΩ*0,1µF=1ms. Die Zeit bis der Kondensator über R2 entladen ist, beträgt etwa t2=R2*C1=100kΩ*0,1µF=10ms.

Der Kondensator wird schnell aufgeladen und relativ langsam entladen.

Wenn der Taster prellt, schießt und öffnet sich der Taster für eine gewissen Zeit mehrfach hintereinander. Das geschieht in wenigen ms. Der Kondensator wird dann mehrfach nacheinander aufgeladen und entlädt sich zwischendurch. Er kann sich allerdings in der Zeit des Prellens nur wenig entladen. Das mehrfache Aufladen des Kondensators hat am Ausgang keine Wirkung. Erst, wenn der Taster losgelassen wird und sich nicht wieder schließt, kann der Kondensator sich ganz entladen und den Ausgang auf 0 legen. Am Takt-Eingang der Schaltung ergibt sich nur ein einziger Impuls.

Der Kondensator entlädt sich in 10ms relativ langsam. Ein CMOS-Takt muss aber in weniger als 400ns schalten, das ist 25000 mal schneller. Ein Schmitt-Trigger kann Impulse mit langsamer Änderung in solche mit sehr schnelle umsetzen.

Diese Schaltung ist weniger aufwändig als die mit dem RS-Flip-Flop. Vor allem kann ein einfacher Taster verwendet werden und nur ein Gatter wird benötigt.

Spannungsverlauf

In So funktioniert's: Kondensator und Widerstand wird der Verlauf der Spannung an einer Schaltung mit Kondensator und Widerstand beschrieben. Der Verlauf ist nicht einfach. Es gibt immerhin eine gute Näherung durch Geraden, die für unsere Zwecke völlig ausreicht.

Der Kondensator C1 wird schnell über den Widerstand R1 aufgeladen und langsam über R2 entladen. Die Ladekurve geht steil nach oben und Entladekurve flach nach unten.

Immer, wenn der Taster geschlossen ist, wird der Kondensator geladen und bei offenem Kontakt entladen.

Wir haben dann etwa folgenden Verlauf:

Prellen.png
Bild 4: Spannungsverlauf beim Prellen

In Bild 4 sind die Linien rot gekennzeichnet, wenn der Taster geschlossen ist. Blau ist offen. Die Spannung am Kondensator steigt schnell auf 5V an, wenn der Kontakt geschlossen ist und fällt langsam bei offenem Kontakt auf 0V ab.

Wir sehen, dass wenn der Kontakt kurzzeitig öffnet, die Spannung am Kondensator nur wenig sinkt und erst am Ende, wenn der Kontakt lange geöffnet ist, auf 0V abfällt.

Ein invertierender Schmitt-Trigger (schwarz) erkennt beim oberen Pegel (magenta) eine 1 und gibt 0 aus. Wenn am Ende die Spannung am Kondensator unter den unteren Pegel (türkis) abgesunken ist, wird eine 0 erkannt und eine 1 ausgegeben.

Automatischer Reset

Fast alle dynamischen Digitalschaltungen müssen nach den Einschalten in einen eindeutigen Zustand gesetzt werden. Dazu haben sie einen Reset-Eingang. Wir müssen nach dem Einschalten einen automatischen Reset-Impuls erzeugen.

Die Schaltung ist einfach: ein Widerstand und ein Kondensator.

Reset.png
Bild 4: Resetschaltungen

Die Schaltung links erzeugt einen positiven Resetimpuls, die mittlere einen negativen. Mit einem Taster kann ein Resetimpuls einfach erzeugt werden.

Die Funktionsweise ist einfach. Der Kondensator ist vor dem Einschalten der Versorgungsspannung entladen. Er lädt sich dann langsam auf. Die Widerstände R1, R2 bzw. R4 legen dann den endgültigen Pegel fest.

Attention attention

Wenn sowohl am Takt- als auch am Reset-Eingang eines Digitalbausteins ein RC-Glied liegt, sollte die Zeitkonstante t=R*C am Reset-Eingang mindestens doppelt so groß sein wie am Takt, d.h. am Reset-Eingang ist der Kondensator oder der Widerstand doppelt so groß.