Es besteht ein Problem beim Verbinden von zwei synchronen 4-Bit-Up-Down-Zählern

Ampelschaltung

Das ist eine Ampelschaltung, die ich auf Multisim entworfen habe . Ich habe 2 74LS191- Zähler, 2 74LS47- Decoder, 2 Siebensegmentanzeigen, einen 555-Timer und ein JK-Flip-Flop verwendet , wie Sie sehen.

Es sollte von 29 bis 00 herunterzählen, dann schalten die Lichter um und der gleiche Vorgang wiederholt sich erneut.

Das Problem, das ich habe, ist, dass der untere Zähler, der für die Anzeige von Zahlen auf der linken Anzeige verantwortlich ist, so lautet: 0 -> 2 -> 1 -> 0 , anstatt bei 2 zu beginnen, wenn ich die Simulation zum ersten Mal ausführe. aber nachdem es den ersten Zyklus beendet hat, funktioniert es richtig. Ich denke, das Problem liegt entweder an den Verbindungen oder an Multisim, aber ich kann die Ursache nicht wirklich bestimmen. Kannst du mir bitte helfen?

Sie scheinen kein Power-On-Reset-System zu haben ...
@Trevor Ich denke, das Anschließen des RCO an den Load-Pin führt dazu, dass der Zähler jedes Mal zurückgesetzt wird, wenn er Null erreicht, wenn ich verstanden habe, was Sie richtig gesagt haben
Das wäre für den weiteren Betrieb richtig, aber nicht für das erstmalige Laden. Ich habe eine Antwort gepostet, bin mir nicht sicher, ob sie richtig ist. Können Sie versuchen, den unteren Zähler auf 9 zu setzen, um zu sehen, ob er mit 9 beginnt?
Ja, aber womit es beim Einschalten beginnt, ist undefiniert. Sie müssen diese Ersatz-AND-Gatter und einen RC verwenden, um es zurückgesetzt zu halten, während die Stromversorgung anliegt.
Wenn Sie nicht weiterkommen... rufen Sie einfach an. Es wäre auch eine nette Ergänzung, einen Druckknopf hinzuzufügen, um ihn manuell zurückzusetzen, während Sie gerade dabei sind.

Antworten (2)

Ich würde Trevor zustimmen, dass Sie eine externe Rücksetzschaltung benötigen. Vor einigen Jahren entwarf ich eine Schaltung auf der Basis von LS191, um herauszufinden, dass der TC- und RCO-Ausgang schwierig zu verwenden sind.

Im Allgemeinen können Sie sie nicht zum Zurücksetzen verwenden, und sie haben andere begrenzte Anwendungen als das Kaskadieren von Zählern.

Sehen Sie sich dieses Datenblatt von TI auf Seite 5 an. Es hat ein Zeitdiagramm, und Sie können sehen, dass RCO unten aktiv wird, wenn der Zählerwert 9 beträgt. Höchstwahrscheinlich wird der obere Zähler deshalb selbst zurückgesetzt, und der untere Zähler nicht . Ich wette, wenn Sie den unteren Zähler an seinen Eingängen auf 9 setzen, beginnt er auch mit 9, nicht mit 0. Beweisen Sie, dass ich falsch liege :)

Update: Die Reset-Schaltung ist einfach - wie Trevor sagte, verwenden Sie zwei Ersatz-UND-Gatter, die ihre Ausgänge mit den LOAD-Eingängen von LS191 verbinden, einen ihrer Eingänge mit dem jeweiligen RCO verbinden und die zweiten Eingänge wie folgt mit der Widerstands-Kondensator-Schaltung verbinden . Beim Einschalten, während der Kondensator nicht geladen ist, vergeht einige Zeit, bis er sich auf die Spannung auflädt, die ausreicht, um 1 an den Eingängen der UND-Gatter auszulösen, und dann arbeiten diese Gatter weiter, indem sie von RCOs niedrig angesteuert werden. Die LS191-Ladung erfolgt irgendwo am Ende der "Ladeperiode" des Kondensators.

Update 1: Ich habe WhatRoughBeast für die Erwähnung der Anforderung einer Schmitt-Trigger-Aktion zwischen RC-Schaltung und UND-Gatter-Eingang positiv bewertet. Während sich die Schaltung in der Simulation ordnungsgemäß verhalten kann, kann es im wirklichen Leben zu Störungen und Fehlern kommen.

Ich habe den Artikel von STMicroelectronics gelesen, auf den ich oben verwiesen habe, und die ST6-MCU, auf die sie abzielt, hat einen Schmitt-Trigger an ihrem Reset-Eingang (Seite 25). Es scheint, dass UND-Gatter-Chips mit Schmitt-Triggern an ihren Eingängen nicht existieren; Daher ist der einfachste / billigste (aber möglicherweise nicht optimalste Weg) die Verwendung von LS14 (es hat 6 Wechselrichter, während Sie nur zwei Daisy-Chain benötigen). Optimaler, ich würde sagen fortgeschrittener, ist die Verwendung einer Art Reset-Supervisor, zB TLC7705 . Ein gutes Reset-Signal, das von diesem Chip erzeugt wird, kann zuverlässig an anderer Stelle in Ihrer Schaltung verwendet werden.

Sie liegen überhaupt nicht falsch, es beginnt bei 99 zu zählen, aber ich habe noch nie daran gedacht, eine externe Reset-Schaltung herzustellen, also weiß ich irgendwie nicht, wie ich es machen soll
Aktualisierte Antwort mit einfacher Erklärung der Rücksetzschaltung
Wow! Danke! Es funktionierte genauso wie beabsichtigt. Du bist großartig, Alter!

Bei allem Respekt, Sie haben den Punkt der synchronen Zähler und der synchronen Logik im Allgemeinen verfehlt. Dies zeigt sich in Ihrer Verwendung des RCO des oberen Zählers, um die Uhr des unteren zu steuern. Natürlich wird die Verwendung des 191 für den gewünschten Zweck aufgrund des asynchronen Zurücksetzens sowieso eine Herausforderung sein.

Tatsächlich gibt es keinen Grund zu der Annahme, dass Ihre Schaltung so funktioniert, wie Sie es beabsichtigen. Wenn der obere Zähler Null erreicht, wird er sofort auf 9 geladen und erzwingt eine Zählung des unteren Zählers. Sie zählen also 29, 28, 27, 26, 25, 24, 23, 22, 21, (20), 19, 18 usw., wobei die Zählung in Klammern nur ein Flimmern ist. Nicht nur das, der RCO-Ausgang ist außerdem anfällig für verfälschte Runt-Impulse an Taktflanken, da ein interner Laufzeitversatz eine falsche Dekodierung der Ausgänge verursacht.

Im Allgemeinen ist die Herstellung einer Einschalt-Rücksetzschaltung vielleicht ein bisschen (nur ein bisschen) komplizierter als vorgeschlagen. Dies liegt daran, dass Sie einen Schmitt-Trigger im RC-Netzwerk benötigen - eine große Zeitkonstante erzeugt einen langsamen Übergang durch die Logikschwelle und es besteht dann die Möglichkeit eines verrauschten Einschaltsignals, was unerwartete Auswirkungen haben kann.

Schließlich würde ich nicht empfehlen, einen Binärzähler für Dekadenarbeit zu verwenden, oder zumindest keinen mit einer asynchronen Ladefunktion. Am besten verwenden Sie einen vollsynchronen Zähler wie den 74LS169.

Daher würde ich die folgenden Änderungen an Ihrer Schaltung empfehlen, vorausgesetzt, Sie müssen die 191 verwenden

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

In dieser Schaltung sind alle Inverter Schmitt-Trigger wie der 74LS14. Sie werden feststellen, dass der TCO der ersten Stufe mit dem CTEN der zweiten Stufe verbunden ist und es eine gemeinsame Uhr gibt. Außerdem geht jeder TCO zu einem Flip-Flop, das einen kurzen (ca. 100 us) Ladeimpuls erzeugt, der mit dem Power-On-Reset kombiniert wird, das von der RCD-Schaltung auf der linken Seite erzeugt wird.

Dies ist eine wirklich kluge Schaltung und kann durch die Verwendung von 74169s wie folgt stark vereinfacht werden

schematisch

Simulieren Sie diese Schaltung

Sie werden feststellen, wie viel einfacher das ist. Allerdings müssen Sie auf eine Sache achten. Da die Ladefunktion synchron ist, muss der Power-On-Reset lang genug sein, um zu gewährleisten, dass mindestens eine Taktflanke auftritt, während der Reset aktiv (Low) ist. Wenn Sie das nicht tun, funktioniert das Zurücksetzen nicht zuverlässig.