Forum: Mikrocontroller und Digitale Elektronik T-Flipflop-Verzeweifelung


von Holger L. (subzero)


Angehängte Dateien:

Lesenswert?

Hi,

Motivation: ich habe einen elektronischen Taster und möchte ihn zum 
Schalter umbauen.

Also dachte ich mir: T-FF aus JK-FF basteln, JK auf High, Clock an 
Taster und schon funktioniert es, Plan anbei. Flugs einen Aufbau gebaut 
und seitdem leide ich ganz furchtbar unter meiner Ahnungslosigkeit: denn 
es funktioniert nicht.

An (1) hängt über 680 Ohm ein LED. Die Schaltung ist m. E. fehlerfrei 
aufgebaut, so schwer isses nicht. Gemessen habe ich, was zu messen geht, 
sieht alles OK aus, (3) geht bei Tastendruck auf LOW, Prellen hin und 
her, irgendwas sollte doch mal passieren.

Was mache ich falsh?

von Peter D. (peda)


Lesenswert?

Bei CMOS müssen immer alle Eingänge beschaltet werden, auch die der 
nicht benutzten Gatter/FF.

von Achim S. (Gast)


Lesenswert?

Pin 4 (Reset) ist nicht definiert, das könnte deinen Ausgang auf low 
halten. Auch die Eingänge des zweiten, nicht benutzten FFs sollten einen 
definierten Pegel sehen.

von Joachim .. (joachim_01)


Lesenswert?

Wenn Pin 4 (Res) den gleichen Zustand hat wie Pin 7 (Set) dann ändert 
sich nix - sagt die Wahrheitstabelle. Beschalte Pin 4 mal zur Sicherheit 
mit Vcc.

Uups, der Achim war schneller.

von Holger L. (subzero)


Lesenswert?

Danke, danke!

Pin 4 ist jetzt auch High, ändert am beklagenswerten Gesamtbild nix.

von Achim S. (Gast)


Lesenswert?

ich hätte allerdings gesagt, dass Reset auf low-Pegel muss. Nur wenn S 
und R auf low sind, wird die Funktion des FF über J und K bestimmt.

von Holger L. (subzero)


Lesenswert?

> ich hätte allerdings gesagt, dass Reset auf low-Pegel muss.

Ändert nichts.

Das andere JK-FF ist noch unbeschaltet. Kann es wirklich solche 
Auswirkungen haben?

von Georg G. (df2au)


Lesenswert?

Holger Lembke schrieb:
> Kann es wirklich solche
> Auswirkungen haben?

JA!

von Achim S. (Gast)


Lesenswert?

Holger Lembke schrieb:
> Kann es wirklich solche
> Auswirkungen haben?

eher unwahrscheinlich, allerdings ist es auch keine große Sache, die 
Eingäng alle auf 0 zu legen, um die mögliche Fehlerquelle 
auszuschließen.

Was zeigen denn aktuell die beiden Ausgänge Q und /Q des benutzten FF 
an. Sind beide auf low oder verhalten sie sich komplementär?

von Holger L. (subzero)


Lesenswert?

> Sind beide auf low oder verhalten sie sich komplementär?

Komplementär, so wie ich es erwarten würde.

Beim anderen FF sind nun alle Eingänge auf LOW, bewegt auch nix.

von Thosch (Gast)


Lesenswert?

ohne den Taster zu entprellen, wirst Du keine Freude an der Schaltung 
haben...

Der Taster prellt, d.h. er kontaktiert mehrmals hintereinander in 
scheller unregelmäßiger Folge bei einer Betätigung.
Das T-Flipflop schaltet jedesmal um. Ohne eine wirksame Entprellung ist 
der Schaltzustand des FFs nach Betätigung also reine Lotterie.

Mögliche Entprellung für den Taster wäre z.B. ein RC-Glied am Taster und 
ein nachgeschalteter Schmitt-Trigger dessen Ausgang dann den Taktpin vom 
T-Flipflop treibt.

z.B. so wie hier: http://www.mikrocontroller.net/articles/Entprellung
unter "Einfacher Taster" beschrieben.

Der invertierende Schmitt-Trigger hätte zudem noch den Vorteil, daß das 
Flipflop beim Drücken des Tasters umschaltet und nicht erst beim 
Loslassen.

Gruß,
Thosch

von Thosch (Gast)


Lesenswert?

Achja: Geeignete Schmitt-Trigger ICs der 4000er CMOS-Familie wären z.B. 
40106 (6 invertierende Schmitt-Trigger)
4093  (4 NAND-Gatter mit Schmitt-Trigger Inputs)

von Holger L. (subzero)


Angehängte Dateien:

Lesenswert?

Thosch schrieb:
> ohne den Taster zu entprellen, wirst Du keine Freude an der Schaltung
> haben...

Die habe ich auch mit Prellen nicht, denn (siehe ganz oben), es sollte 
sich zumindest irgendwas tun. Es tut sich aber gar nix.

Und (siehe oben), ich habe einen elektronischen Taster, der die 
Schaltung später mal ansteuern soll (ein PT2272M). Klappte nicht, also 
die Sache erst mal ohne den Schalter ausprobieren.

Aktueller Schaltungsstand anbei, der immer noch nicht das tut, was ich 
erwarte. CD4027 getauscht, von Breadboard auf Lochraster umgelötet... 
Ich bin anscheinend zu blöd dazu.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Holger Lembke schrieb:
> Aktueller Schaltungsstand anbei, der immer noch nicht das tut, was ich
> erwarte. CD4027 getauscht, von Breadboard auf Lochraster umgelötet...
> Ich bin anscheinend zu blöd dazu.

Die Schaltung sieht jetzt korrekt aus. Perfekt wird sie, wenn du noch 
einen Stützkondensator (ca. 100 nF) von Pin 16 nach Pin 8 schaltest. 
Funktioniert die Schaltung dann immer noch nicht, kannst du ja mal ein 
Foto davon posten.

von Holger L. (subzero)


Lesenswert?

Danke, das scheint mir jetzt nicht mehr notwendig. Es funktioniert 
nämlich.

Um die eigene Blödheit zu analysieren: beim Umbau von Breadboard auf 
Lochrasterplatine (ohne die (4)-Reset-Verdrahtung) hab' ich blöderdings 
die LED falsch rum angeschlossen... eben bemerkt.

Ach je. :-)

Danke für die viele und schnelle Hilfe, das war sehr schön!

Wenn jemand mag (Georg G?) würde ich mich über eine detailliertere 
Erklärung, warum auch die Eingänge des nicht benutzte FF auf 0 gelegt 
werden sollen, freuen.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Holger Lembke schrieb:
> Wenn jemand mag (Georg G?) würde ich mich über eine detailliertere
> Erklärung, warum auch die Eingänge des nicht benutzte FF auf 0 gelegt
> werden sollen, freuen.

Diese Regel gilt im Prinzip für alle Digitalschaltungen, ganz besonders 
aber für solche in CMOS-Technologie.

Schau dir dazu als einfaches Beispiel den CMOS-Inverter aus zwei Mosfets 
an:

http://de.wikipedia.org/wiki/Cmos#Technik

Bei sauberem Low-Pegel am Eingang leitet nur der obere, bei sauberem 
High-Pegel nur der untere Mosfet. Entsprechend erscheint am Ausgang das 
invertierte Eingangssignal.

Legt man am Eingang hingegen einen Pegel zwischen High und Low an, so 
leiten beide Mosfets ein wenig, und es fließt durch sie ein Querstrom. 
Der Hauptvorteil von CMOS, nämlich der geringe Stromverbrauch, ist damit 
nicht mehr vorhanden. Da nun auch der Ausgang kein definiertes 
Logiksignal mehr liefert, pflanzt sich das Problem zudem auf 
nachfolgende Gatter fort.

Die Gates der Mosfets sind extrem hochohmig. Lässt man den Eingang 
offen, dann hängt das effektive Eingangssignal davon ab, wieviel Ladung 
sich zufälligerweise gerade in den Gates befindet. Aber auch dieser Wert 
bleibt nicht konstant. Schon ein elektrisch geladener Synthetikpulli 
kann die Gate-Ladung aus mehreren Dezimetern Entfernung beeinflussen. So 
fließen in der Schaltung ständig irgendwelche unkontrollierten Ströme, 
die bei einer komplexen Schaltung mit vielen Gattern recht hoch werden 
können.

Aber es kommt noch schlimmer: Das Umschalten eine Gatters erzeugt wegen 
der kurzzeitigen Stromspitze eine Störung auf der Versorgungsspannung. 
Diese wird größtenteils, aber nicht vollständig durch den 
Stützkondensator am IC weggebügelt (sofern man einen eingebaut hat). Die 
verbleibende Störung kann aber ausreichen, um über kapazitive Kopplung 
den Pegel an einem offenen Eingang eines Gatters zu beeinflussen. Damit 
entsteht ein rückgekoppeltes System, das die Eigenschaft hat, gerne zu 
schwingen. Diese Schwingungen liegen im Bereich der maximalen 
Schaltfrequenz der Gatter, steigern damit den Stromverbrauch immens und 
können sich schlimmstenfalls kapazitiv auf andere Schaltungsteile 
übertragen.

All diese Probleme können mit einem Stückchen Draht an die unbenutzten 
IC-Eingänge beseitigt werden.

von Seb (Gast)


Lesenswert?

Wieso sollte sich das auf sein zweites FlipFlop, was garnicht benutzt 
wird, aufs erste auswirken?
Das sind zwei von einander unabhängig arbeitende FlipFlops, das einzige 
was sie gemeinsam haben, sind Versorgungs und Ground - Pins, und dass 
sie auf einem Die liegen, aber solange sie nicht hintereinander 
verschaltet werden, wie soll das eine das andere denn beeinflussen?!

von Holger L. (subzero)


Lesenswert?

Yalu X. schrieb:
> All diese Probleme können mit einem Stückchen Draht an die unbenutzten
> IC-Eingänge beseitigt werden.

Danke für die Erklärung. Es deckt sich mit meinen Vermutungen, als 
Fachfremder finde ich es wichtig, die zu überprüfen bzw. in schöneren 
Worten gesagt zu bekommen.

Letztlich funktioniert es nun sehr brav: ein billiger Funkempfänger 
(AK-RK01-12) mit SC2272M (momentary switch mode) ist nun ein Schalter.

von Wilhelm F. (Gast)


Lesenswert?

Holger Lembke schrieb:

> Wenn jemand mag (Georg G?) würde ich mich über eine detailliertere
> Erklärung, warum auch die Eingänge des nicht benutzte FF auf 0 gelegt
> werden sollen, freuen.

Durch Yalu wurde es schon erläutert.

Bei unbeschalteten CMOS-Eingängen an 4000-er Bausteinen erlebte ich 
schon in der Praxis, daß sie mal warm werden, bis heiß glühend, richtig 
abgeraucht ist mir aber noch keiner richtig.

Heute hatte ich mal anläßlich dieses Threads so einen Gedankenfurz, daß 
man CMOS-ICs auf dem Steckbrett durch eine Leitfolie oder dünnen 
Leitschaumstoff auf ein Steckbrett aufstecken könnte, um sofort 
automatisch beliebige unbekannte Pegel an den Eingängen zu vermeiden. 
Aber nee, das wird bestimmt auch nicht immer so richtig. Ein Inverter 
würde sich unter Umständen auf U/2 vor spannen. Das gibt es sogar als 
erwünschte Schaltung, und macht auch noch nichts. Wenn die Leitfolie 
hochohmig genug wäre? Vielleicht würde es doch ein brauchbarer Ansatz?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.