Forum: Mikrocontroller und Digitale Elektronik 32-bit Shift-Counter


von Bert S. (kautschuck)


Lesenswert?

Hi,

Ich möchte einen 32-bit Shift-Counter (also Ausgang mit jeder Clock ist 
vorheriger Ausgang << 1) inkl. Reset aus mehreren 8-bit Countern bauen, 
jedoch blicke ich gerade nicht durch, wie ich das am besten machen.

Wenn ich einen normalen Counter nehme, also sowas wie einen 74HC4017D, 
dann kann ich zwar mehrere sequentiell hängen, aber dies führt dann 
einer normalen binären Counter. Jemand eine Idee, wie man das am 
einfachsten macht?

von Cyblord -. (cyblord)


Lesenswert?

Vielleicht kann man einfach aus 4 8 Bit Binärcountern nicht ein 32 Bit 
Shiftcounter bauen?
Aber evt. aus 4x 8 Bit Shiftcountern?

: Bearbeitet durch User
von Rainer W. (rawi)


Lesenswert?

Bert S. schrieb:
> Jemand eine Idee, wie man das am einfachsten macht?

Ein "Ausgang mit jeder Clock ist vorheriger Ausgang << 1" wird 
gewöhnlich als Schieberegister und nicht als Counter bezeichnet.
Was genau möchtest du erreichen?

von Gunnar F. (gufi36)


Lesenswert?

Rainer W. schrieb:
> Ein "Ausgang mit jeder Clock ist vorheriger Ausgang << 1" wird
> gewöhnlich als Schieberegister und nicht als Counter bezeichnet.

Genau, mit 4x HCT595 geht das schon.

von Falk B. (falk)


Lesenswert?

Bert S. schrieb:
> Ich möchte einen 32-bit Shift-Counter (also Ausgang mit jeder Clock ist
> vorheriger Ausgang << 1)

Mal sicher nicht. Es gibt keine Shiftcounter. Es gibt Schieberegister 
oder Zähler bzw. shift registers und counter, wenn man Angelsachse ist.
und "eine clock" gibt es auch nicht, außer im Deppenland.

http://kamelopedia.net/wiki/Denglisch

In Germanien nennt man das "einen Takt".

> inkl. Reset aus mehreren 8-bit Countern bauen,
> jedoch blicke ich gerade nicht durch, wie ich das am besten machen.
>
> Wenn ich einen normalen Counter nehme, also sowas wie einen 74HC4017D,
> dann kann ich zwar mehrere sequentiell hängen, aber dies führt dann
> einer normalen binären Counter. Jemand eine Idee, wie man das am
> einfachsten macht?

Ja, mal klar formulieren, was es denn eigentlich werden soll.

: Bearbeitet durch User
von Bert S. (kautschuck)


Angehängte Dateien:

Lesenswert?

Danke euch, habe irgendwie das shift Register mit dem Counter 
verwechselt, aber macht natürlich Sinn mit dem Shift Register.

Als Shift Register nehme ich einen 74HC595PW: 
https://www.nexperia.com/product/74HC595PW

Im Prinzip will ich zu Beginn eines Zyklus alle Ausgänge auf LOW haben, 
dann mit der CLK einfach ein HIGH über die 32 Ausgänge schieben (führt 
zu verschiedenen LEDs) und danach wieder alles auf LOW bis zum nächsten 
Zyklus.

von Wastl (hartundweichware)


Lesenswert?

Bert S. schrieb:
> dann mit der CLK

Nein! Entweder

"dann mit der CLK-Leitung ...."

oder:

die CLK  --->  Uhr
der CLK  --->  Takt

von Εrnst B. (ernst)


Lesenswert?

Bert S. schrieb:
> Im Prinzip will ich zu Beginn eines Zyklus alle Ausgänge auf LOW haben,
> dann mit der CLK einfach ein HIGH über die 32 Ausgänge schieben (führt
> zu verschiedenen LEDs) und danach wieder alles auf LOW bis zum nächsten
> Zyklus.

Counter 74HC4060, davon die 3 LSB auf vier 74HC238 (A,B,C), die nächsten 
zwei Bits gekonnt an die G1, G2A, G2B enables Verkabeln, dass immer nur 
einer der 3-to-8 Dekoder aktiv ist?
Falls eine Pause zwischen jedem Lauflicht-Durchlauf gewünscht ist: 
höherwertige Zählerbits für die Enable-Logik verwenden...

von Jörg R. (solar77)


Lesenswert?

Bert S. schrieb:
> Danke euch, habe irgendwie das shift Register mit dem Counter
> verwechselt, aber macht natürlich Sinn mit dem Shift Register.
>
> Als Shift Register nehme ich einen 74HC595PW:
> https://www.nexperia.com/product/74HC595PW
>
> Im Prinzip will ich zu Beginn eines Zyklus alle Ausgänge auf LOW haben,
> dann mit der CLK einfach ein HIGH über die 32 Ausgänge schieben (führt
> zu verschiedenen LEDs) und danach wieder alles auf LOW bis zum nächsten
> Zyklus.

In diesem Youtube Video wird der 74595 ganz gut erklärt, inkl. 
Kaskadierung:

https://youtu.be/2Cs4IFqiVW8

von Yalu X. (yalu) (Moderator)


Lesenswert?

Schnapp dir für wenige Euro einen WS2812-Streifen mit der entsprechenden
Anzahl von LEDs (wenn es zu viele sind, kannst du den Rest abschneiden)
und den billigsten Mikrocontroller, den du finden kannst.

Damit hast du mit viel weniger Verkabelungsaufwand nicht nur ein
schnödes, einfarbiges Lauflicht, sondern kannst beliebige bunte (16 Mio
Farben), zeitlich animierte Muster herbeizaubern.

Edit:

Das hier kannst du als Vorlage nehmen:

  https://www.instructables.com/1-Rainbow-Fire-Lamp-With-CH32V003-and-WS2812/

Von den im Link gezeigten 8-fach-LED-Modulen kannst du 4 kaskadieren, um
auf die 32 zu kommen, oder die LED-Kette als Meterware (flexibles Band)
kaufen.

Den Akku mit Laderegler und das Poti brauchst du wahrscheinlich nicht,
so dass sich die ganze Schaltung auf das hier reduziert (wenn man das
überhaupt noch als Schaltung bezeichnen kann):

  https://content.instructables.com/FVH/53FQ/LZ455WVK/FVH53FQLZ455WVK.jpg?auto=jpeg

: Bearbeitet durch Moderator
von Peter D. (peda)


Lesenswert?

Bert S. schrieb:
> Als Shift Register nehme ich einen 74HC595PW:

Da muß man aber noch ins Ausgangsregister übernehmen, ist also einen 
Takt zu spät.
Als Schieberegister ist daher ein 74HC164 besser.

von Falk B. (falk)


Lesenswert?

Bert S. schrieb:
> Im Prinzip will ich zu Beginn eines Zyklus alle Ausgänge auf LOW haben,
> dann mit der CLK einfach ein HIGH über die 32 Ausgänge schieben (führt
> zu verschiedenen LEDs) und danach wieder alles auf LOW bis zum nächsten
> Zyklus.

Dafür nimmt man besser den 74HC164, der kann das direkt. Dann braucht 
man auch nur 2 Signale Zur Ansteuerung, Daten und Takt. Hat aber den 
Nachteil, daß der das dann NUR so kann. Der 74HC595 kann beliebige 
Datenmuster ausgeben, ohne dabei Zwischenmuster auszugeben (getrenntes 
Schiebe- und Datenregister).

von Gregor J. (Firma: Jasinski) (gregor_jasinski)


Lesenswert?

Das wird wieder einmal eine schwere Geburt... Es gibt noch andere – 
womöglich besser passende – TTL-Bausteine außer dem HC595. Wenn man aber 
im Eingangspost schon alle Begriffe in dem Kontext durcheinanderbringt, 
wird man wohl die alte TTL-Reihe auch nicht so richtig kennen, sondern 
nur darauf hören, was die Papageien aus dem Klan der 
„Schwarmintelligenz” irgendwo gehört haben und dann in der Regel sinnlos 
nachplappern. Das Ausgangsregister des 595 kann leider auch nicht 
asynchron gelöscht werden, da hier zwei Register vorliegen und mit 
Masterreset zunächst einmal nur das Schieberegister gelöscht wird – nach 
dem Start gibt es dann also erstmal zufällige Werte an den Ausgängen.

von Motopick (motopick)


Lesenswert?

Jörg R. schrieb:

> In diesem Youtube Video wird der 74595 ganz gut erklärt, inkl.
> Kaskadierung:
>
> https://youtu.be/2Cs4IFqiVW8

In diesem Datenblatt wird der 74595 ganz gut erklärt, inkl.
Kaskadierung:

https://www.ti.com/lit/ds/symlink/sn74hc595.pdf

Utube ist was fuer Imbazile und Legastheniker.

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


Lesenswert?

Bert S. schrieb:
> Im Prinzip will ich zu Beginn eines Zyklus alle Ausgänge auf LOW haben,
> dann mit der CLK einfach ein HIGH über die 32 Ausgänge schieben (führt
> zu verschiedenen LEDs) und danach wieder alles auf LOW bis zum nächsten
> Zyklus.

Du mußt lernen, dich klarer auszudrücken. Was nennst du z.B. Zyklus? Und 
was ist mit "ein HIGH über die 32 Ausgänge schieben" gemeint? Willst du 
daß immer nur genau ein Ausgang H ist oder sollen die Ausgänge der Reihe 
nach auf H schalten bis alle H sind? Und dann wieder alle auf L?

Im Zweifelfall hilft ein Taktdiagramm dabei, die Dinge klar zu sehen. Es 
ist kein Zufall, daß nahezu alle Datenblätter von Schieberegistern ein 
solches enthalten.


PS: kennst du "Das große Schaltkreis-Bastelbuch" von Hagen Jakubaschk? 
Da ist ein eigenes Kapitel (4.1.3.6) drin zur Erzeugung bestimmter 
Taktmuster mit Schieberegistern. Natürlich mit Taktdiagrammen.

: Bearbeitet durch User
von Motopick (motopick)


Lesenswert?

Falk B. schrieb:

> Dafür nimmt man besser den 74HC164, ...

Es gibt noch viel mehr Schieberegister.
Mit einem 4034 kann man aber kaum etwas verkehrt machen.
Wenn man noch einen bekommt.

von Falk B. (falk)


Lesenswert?

Motopick schrieb:
>> Dafür nimmt man besser den 74HC164, ...
>
> Es gibt noch viel mehr Schieberegister.
> Mit einem 4034 kann man aber kaum etwas verkehrt machen.
> Wenn man noch einen bekommt.

Das sollte dir zu Denken geben . . .

von Motopick (motopick)


Lesenswert?

Falk B. schrieb:
> Motopick schrieb:
>>> Dafür nimmt man besser den 74HC164, ...
>>
>> Es gibt noch viel mehr Schieberegister.
>> Mit einem 4034 kann man aber kaum etwas verkehrt machen.
>> Wenn man noch einen bekommt.
>
> Das sollte dir zu Denken geben . . .

Ja, dem 4034 fehlt die ALU. :)

von J. T. (chaoskind)


Lesenswert?

Motopick schrieb:
> Utube ist was fuer Imbazile und Legastheniker.

Scheinst du zuzugehören, den Youtube schreibt sich nicht UTube. Wie wäre 
es, einfach mal die Fresse zu halten, wenn man keine Ahnung hat?
Auf Youtube mag es zwar sehr viel Müll geben, aber eben auch sehr fähige 
Leute, die es verstehen ein Thema didaktisch äusserst wertvoll 
aufzuarbeiten.

Und es mag ja durchaus Leute geben, die einem Video keine sinnvollen 
Informationen entnehmen können, aber es deshalb allen madig machen, die 
es können, ist auch nicht die feine Englische.

: Bearbeitet durch User
von Rainer W. (rawi)


Lesenswert?

Bert S. schrieb:
> Shift Register

Auf deutsch heißt so ein Ding "Schieberegister". Anhand der richtigen 
Begriff wird dir vielleicht klarer, warum man zum Schieben keinen Zähler 
verwendet. 😉

von Motopick (motopick)


Lesenswert?

J. T. schrieb:

> Auf Youtube mag es zwar sehr viel Müll geben, aber eben auch sehr fähige
> Leute, die es verstehen ein Thema didaktisch äusserst wertvoll
> aufzuarbeiten.

Es ist ein riesiger Muellhaufen. Wer gerne im Muell wuehlt, wird sich
stundenlang damit beschaeftigen koennen.
Der TO, bei dem erkennbar noch voellige D0nkelheit herrscht, wird
auch nicht in der Lage sein, aus diesem Muellhaufen die besonders
"wertvollen" Beitraege zu finden. Honks bewerten Beitraege von anderen
Honks eben nur mit dem Pradikat: "Gefaellt mir".
Ein "fachlich/didaktisch besonders wertvoll" kommt da nicht vor.
Und es wuerde ja auch nicht reichen.

Letztendlich entscheidet das Verstaendnis des Datenblattes, der
Wahrheitstabellen, Zustandsgraphen und Taktdiagramme darueber, ob
man die Funktion eines Bauelementes versteht, und im Fehlerfall auch
die noetigen Schlussfolgerungen ziehen kann.
Und wenn der TO das nicht schafft, wird er ein digitaler
"Legastheniker" bleiben.

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.