Forum: Mikrocontroller und Digitale Elektronik Johnson-Counter oder Ringzähler umsetzen mit immer nur einem aktiven Bit


von Rainer M. (mythbu)


Lesenswert?

Hallo,

ich brauche für eine LED-Matrix einen Zähler, der jede Zeile 
nacheinander anspricht. Also so:

0000'0001 -> 0000'0010 -> 0000'0100 -> ... -> 1000'0000 -> ANFANG

Ich dachte bisher immer, dass man einen Ringzähler oder Johnson-Counter 
dafür nimmt. Aber ich musste gerade feststellen, dass der immer so 
zählt:

0000'0001 -> 0000'0011 -> 0000'0111 -> ... -> 1111'1111 -> 1111'1110 -> 
1111'1100 -> ... -> ANFANG

Ich möchte, dass aber immer nur ein Bit des Bytes nacheinader aktiv ist. 
Also habe ich gesucht und nichts gefunden. Meine Lösung besteht nun aus 
8 D-FF (SN74HC273), die entsprechend [1] verschaltet sind. Die Ausgänge 
Q werden alle mit NOT und dann AND verarbeitet und gehen in den Eingang 
des ersten D-FF rein. Das funktioniert, hab's getestet. Nun brauche ich 
dafür aber 3 ICs (quad D-FF, hex NOT, hex AND). Gibt's das vielleicht 
auch in einem IC schon verbaut?

Viele Grüße,
Rainer

[1] 
http://upload.wikimedia.org/wikipedia/commons/thumb/e/e8/JohnsonCounter2.png/400px-JohnsonCounter2.png

von derguteweka (Gast)


Lesenswert?

Moin,

Der CD4017 oder CD4022 haben interne Johnson-Zaehler, die aber "nach 
aussen" genau das machen, was du gerne haettest. Ansonsten denk' ich 
mal, dasses bei LED Ansteuerung nicht so schnell zugeht, dass man 
dringend Synchronzaehler braucht; also koennt's doch auch ein 
Binaerzaehler zB. 7493; 74393 und nachgeschalteter 1-aus-8 Decoder 
(74138, 7442...) tun...

Gruss
WK

von Tassilo H. (tassilo_h)


Lesenswert?

74hct4017 und Q8 mit Reset verbinden?!

von Peter D. (peda)


Lesenswert?

Als Einchiplösung könnte man einen MC entsprechend programmieren, z.B. 
ATtiny24.

von Falk B. (falk)


Lesenswert?

Für eine LED-Matrix nutzt man so oder so sinnvollerweise einen uC, 
da braucht man keinen extra ATtiny für so einen Dekoder!

von Axel S. (a-za-z0-9)


Lesenswert?

Rainer M. schrieb:

> ich brauche für eine LED-Matrix einen Zähler, der jede Zeile
> nacheinander anspricht.
> Ich dachte bisher immer, dass man einen Ringzähler oder Johnson-Counter
> dafür nimmt.

Kann man. Aber eben keinen nackten Ringzähler. Sondern einen mit 
ausdecodierten Ausgängen wie etwa den 4017 (74HC4017).

> Also habe ich gesucht und nichts gefunden. Meine Lösung besteht nun aus
> 8 D-FF (SN74HC273), die entsprechend [1] verschaltet sind. Die Ausgänge
> Q werden alle mit NOT und dann AND verarbeitet und gehen in den Eingang
> des ersten D-FF rein. Das funktioniert, hab's getestet. Nun brauche ich
> dafür aber 3 ICs (quad D-FF, hex NOT, hex AND). Gibt's das vielleicht
> auch in einem IC schon verbaut?

Wie gesagt, ein 4017 mit Zählweitenbegrenzung 0-7. Alternativ mit 2 IC: 
einem Binärzähler (74x93) und einem 3 Bit zu 1-aus-8 Decoder (74x138)

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.