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


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
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.