74 LS 191 dezimal hochzaehlen?

Hallo!
Ich habe im Moment einen 74 LS 191, der froehlich dezimal runterzaehlt:
http://img406.imageshack.us/img406/2420/74ls191.png

Nun ist meine Frage:
Mit welcher moeglichs einfachen Schaltung ist es moeglich, dass, wenn ich einen Schalter umlege, der IC dezimal hochzaehlt?

mfg 91falk

Hallo,

der Eingang 5 D/U ist für das Hoch- bzw. Herunterzählen verantwortlich. Ein 1-Signal an diesem Eingang bewirkt, dass der Baustein herunter zählt. Ein 0-Signal an diesem Eingang und der Baustein zählt hoch.

Du hast den Eingang unbeschaltet gelassen. Die TTL-Logik interprtiert dies als 1-Signal. Somit zählt dein Baustein herunter.

Ein Widerstand von 1kOhm von dem Eingang auf VCC und ein Schalter von dem Eingang gegen GND bewirken, dass der Baustein in beide Richtungen zählen kann.

Evtl. bemühst du noch mal Google wegen „unbeschaltete Eingänge“ und „TTL“.

Gruß
schmic20

Das ist mir schon klar, das Problem ist aber, dass der Zaehler dann von 0 bis 15 zaehlt und nicht von 0 bis 9… :confused:

mfg 91falk

edit: von 9 bis 15, nicht von 0

Hallo 91falk,

edit: von 9 bis 15, nicht von 0

Das kann nicht sein, wenn dein Schaltplan mit deinem Aufbau übereinstimmt.
Wenn du aber RCO (Pin 13) mit LD (11) verbunden hast, liegt das am Wert welcher an den Eingängen A,B,C und D (15,1,10,9) angelegt ist.

Binär 1001 entspricht dezimal 9.

MfG Peter(TOO)

Mein Aufbau ist exakt so (+100nF Abblockkondensator), wie im Schaltplan angegeben. Was ich auch festgestellt habe, dass der Wert, mit der der Counter nach einem Overflow startet, dem entspricht, welcher an A, B, C und D angeschlossen ist. An LD ist nichts angeschlossen, es sollte also auf High sein.

mfg 91falk

Hallo,

An LD ist nichts angeschlossen, es sollte also auf High sein.

sowas macht man einfach nicht. Genausowenig wie in einem Programm Variablen ohne Defaultwert zu definieren. Gewöhn’ Dir das also ganz schnell wieder ab.
Hat mich (naja, eigentlich die Firma) schon mal ein paar tausend DMark und zwei Wochen Zeit gekostet.
Gruß
loderunner

Wo ist denn da das Problem? Ich denk, das ist dann standardmaessig auf high?

mfg 91falk

Hallo,

Wo ist denn da das Problem? Ich denk, das ist dann
standardmaessig auf high?

Ja. Und was ist mit der Tatsache, dass jedes Stückchen Draht auch gleichzeitig eine Antenne bildet?
Solche Risiken geht man einfach nicht ein, wenn es sich irgendwie vermeiden lässt. Die im Einzelfall notwendige Fehlersuche frisst jede Zeit- und Arbeitsersparniss mehrfach auf.

Wobei ich damit nicht sagen will, dass das hier das Problem ist - damit habe ich mich, ehrlich gesagt, gar nicht befasst.

Gruß
loderunner

Hallo!

Ja. Und was ist mit der Tatsache, dass jedes Stückchen Draht
auch gleichzeitig eine Antenne bildet?

Aber ich habe doch erst eine Antenne, wenn ich etwas an LD anschliesse? Oder koenntest du mir die Problematik naeher Erlaeutern, wofuer es dient, wenn ich an jeden unbeschalteten Eingang etra ein High setze?

mfg 91falk

Hallo,

Ja. Und was ist mit der Tatsache, dass jedes Stückchen Draht
auch gleichzeitig eine Antenne bildet?

Aber ich habe doch erst eine Antenne, wenn ich etwas an LD
anschliesse?

Nein. Das Beinchen selber ist schon eine Antenne. Und das Stückchen Draht innerhalb des IC-Gehäuses. Und sie wird auch noch von daneben liegenden (unter Umständen längeren / besser auf die Störfrequenz ‚abgestimmten‘) Leitungen kapazitiv und induktiv beeinflusst.

Und wenn Du nicht normale TTL-ICs (z.B. 7400), sondern eine CMOS-Variante (z.B. 74HC00 oder 74HCT00) verwendest und nicht dran denkst, reagiert Deine Schaltung dann plötzlich darauf, dass jemand mit statisch aufgeladenen Fingern über das Gehäuse tastet. Oder mit einem Handy neben dem Gerät telefoniert. Oder den PC mit dem nicht abgeschirmten, optisch sehr eindrucksvollen Gehäuse daneben betreibt. Oder wenn draußen die Straßenbahn mit heftig funkender Oberleitung vorbeifährt. Oder der Handwerker- oder Industriebetrieb seinen großen Elektromotor ein- oder ausschaltet. Uswusf.
Gruß
loderunner

Hallo CoMODe,

Und wenn Du nicht normale TTL-ICs (z.B. 7400), sondern eine
CMOS-Variante (z.B. 74HC00 oder 74HCT00) verwendest […]

Nicht zu vergessen, dass sich dabei auch Spannungspegel einstellen können bei welchen beide Ausgangstreiber leiten und das IC als Herdplatte verwendet werden kann!

MfG Peter(TOO)

Hallo!

Mannomann, haette nicht gedacht, dass die Dinger so empfindlich sein koennen…^^ Vielen Dank!

Oder wenn draußen die Straßenbahn mit heftig funkender Oberleitung vorbeifährt.

Keine Sorge, ich Wohn in Kiel, da ist Strassenbahn ein Fremdwort :wink:

Was ich jetzt aber immer noch nicht verstanden habe und was auf mich paradox wirkt, ist warum das vermieden wird, wenn ich die unbeschalteten Eingaenge an VCC schalte? Dadurch habe ich doch eine noch laengere Antenne? Oo

mfg 91falk

PS: Es duerfen auch noch Leute antworten, die mir bei meinem eigentlichen Problem helfen koennten :stuck_out_tongue:

Hallo,

Was ich jetzt aber immer noch nicht verstanden habe und was
auf mich paradox wirkt, ist warum das vermieden wird, wenn ich
die unbeschalteten Eingaenge an VCC schalte? Dadurch habe ich
doch eine noch laengere Antenne? Oo

Du darfst hier nicht die ganze Leitung bis zum Spannungsregler sehen, sondern nur bis zum nächsten Blockkondensator (ein Grund mehr, weshalb er ganz dicht an JEDEM EINZELNEN IC sitzen sollte). Wobei hier zu beachten ist, dass diese Leitung möglichst eng parallel zur zugehörigen Masse geführt werden sollte - eine Antenne ist vor allem eine AntennenFLÄCHE. Und wobei darauf zu achten ist, dass man für die Blockkondensatoren keine Elkos, sondern einen Keramikkondensator verwendet - wegen der schlechten Hochfrequenzeigenschaften bringt ein Elko hier nichts.
Eine kleine Antenne ist ein relativ ‚hochohmiges‘ Gebilde, und wenn man die dann mit Masse verbindet (über einen Kondensator), kann sich keine gefährliche (im Sinne von Fehlfunktion, nicht Zerstörung) Spannung aufbauen. Der Innenwiderstand der Miniantenne ist zu groß dafür. Aber eben nicht zu groß für einen hübsch hochohmigen (CMOS-) Eingang. Wenn dann noch die Schutzdioden und die Eingangskapazität des ICs blöd zusammenwirken, kommt es eben irgendwann möglicherweise zum GAU. Und dann such mal schön nach einem Fehler, der nur einmal am Tag auftritt. Und nur dann, wenn man das Gerät nicht über irgendein angeschlossenes Messgerät erdet.
Gruß
loderunner

Ah, ich glaub das habe ich einigermassen verstanden :smile:

Vielen Dank!

Jetzt nur noch die Frage, wie ich den 191 denn nun dezimal hochzaehlen lassen kann…^^

mfg 91falk

Hallo 91falk,

Jetzt nur noch die Frage, wie ich den 191 denn nun dezimal
hochzaehlen lassen kann…^^

Am einfachsten indem du einen74190 verwendest.

Die andere Variante ist wesentlich komplizierter.
Abhängig von der Zählrichtung und den Wert an den Ausgängen musst du ‚0‘ oder ‚9‘ in den Zähler laden.

MfG Peter(TOO)

Hallo!

Am einfachsten indem du einen74190 verwendest.

Hab ich leider im Moment nicht vorhanden.

Abhängig von der Zählrichtung und den Wert an den Ausgängen
musst du ‚0‘ oder ‚9‘ in den Zähler laden.

Das waer ja eigentlich nicht das Problem, sondern eher, wie ich es hinkriege, dass der Zaehler nur bis 9 und nicht bis 15 zaehlt?

mfg 91falk

Zähler beim 10. Takt mit ‚0000‘ laden
Hallo 91falk,

wenn Du möchtest, dass ein Binärzähler (0-15) im Dezimalsystem (0-10) hochzählt, dann benötigst Du eine Logik, die den Zähler nach jeder 10. Zählung zurücksetzt, so dass die Ausgänge Qa,Qb,Qc,Qd auf LOW schalten und der Zähler auf diese Weise wieder bei Null zu zählen beginnt. Da der 74LS191 keinen Reset-Eingang besitzt, muss der Zähler beim 10. Taktimpuls mit „0000“ geladen werden. Dazu muss an jedem Dateneingang (A,B,C,D) LOW-Pegel anliegen und dann am „LOAD“ Eingang ein (kurzer) LOW-Puls angelegt werden.
Die Logik, die den Zähler beim 10. Zählpuls mit „0000“ lädt, besteht aus einem NAND-Gatter mit zwei Eingängen. Den ersten Eingang des NAND-Gatters legst Du auf Ausgang Qd, und den zweiten Eingang legst Du auf Qb. Der Ausgang des NAND-Gatters wird mit dem LOAD-Pin des Zählers verbunden.
Funktionsweise:
nach 9 Zähltakten haben die Ausgänge den Zustand „1001“ (entspricht dezimal „9“). Nach dem 10. Zählpuls haben die Ausgänge den Zustand „1010“ (entspricht dezimal „10“). Gleichzeitig jedoch lädt das NAND-Gatter bei diesem Zählerzustand den Zähler mit „0000“, so dass der Zählwert „1010“ nur einige Gatterlaufzeiten lang (also einige zehn Nanosekunden) an den Ausgängen des Zählers erscheint.

Das Abwärtszählen ist mit dieser Anordnung allerdings nicht mehr dezimal möglich. Die Abwärtszählung würde nach dem ersten Takt von „0000“ auf „1111“ springen, und sofort würde ein Load-Puls den Zähler mit „0000“ laden (wegen des NAND-Gatters). Der Zustand „1111“ würde also nur einige zehn Nanosekunden an den Ausgängen erscheinen. Ansonsten würde der Zähler nur auf „0000“ bleiben.

Wenn die dezimale Abwärtszählung korrekt durchgeführt werden soll, dann benötigst Du ein NAND-Gatter mit 4 Eingängen, wobei jeder Eingang an einen Ausgang des Zählers geschaltet wird. Der Ausgang des NAND-Gatters wird wieder mit dem LOAD-Eingang des Zählers verbunden.
Funktionsweise: Wenn der Zähler von „0000“ abwärts gezählt wird, erscheint der Zustand „1111“ nur einige zehn Nanosekunden, denn sofort wird der Zähler mit dem Wert „1001“ (dezimal 9) geladen. Natürlich muss diese „9“ zuvor an den Eingängen des Zählers angelegt werden.

Hoffe Du kannst damit was anfangen.
Gruß, Hilarion

Hallo 91falk,

Abhängig von der Zählrichtung und den Wert an den Ausgängen
musst du ‚0‘ oder ‚9‘ in den Zähler laden.

Das waer ja eigentlich nicht das Problem, sondern eher, wie
ich es hinkriege, dass der Zaehler nur bis 9 und nicht bis 15
zaehlt?

Ich habe gerade keine Zeit die die entsprechende Schaltung zu Zeichnen, du benötigst aber einiges an zusätzlichen ICs.

Kurz eine Beschreibung der Funktionsweise:

Wenn der entsprechende Eingang auf hochzählen steht steht:
Wenn die Ausgänge auf ‚9‘ stehen, muss an den Set-Eingängen ‚0‘ angelegt werden und der nächste Zählimpuls muss den Load-Eingang ansteuern. Um das Ganze sicher zu machen, sollte man die Ausgänge auf >= ‚9‘ testen.

Wenn der entsprechende Eingang auf runterzählen steht steht:
Steht am Ausgang der Wert ‚0‘ muss ‚9‘ an den Set-Eingängen angelegt werden und der nächste Zählimpuls muss an Load geleitet werden.

Ein 74190 spart da jede Menge ICs.

MfG Peter(TOO)

Vielen Dank das hilft mir weiter!

mfg 91falk