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?
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.
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
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
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.
Trevor_G
Supa heißes Feuer
Anonym
Trevor_G
Trevor_G