Forum: Mikrocontroller und Digitale Elektronik Schieberegister auf abwärts Zähler


von Janos P. (janoslon421)


Lesenswert?

Hallo,

ich wüsste gern wie man eine Zählerschaltung baut die bis sieben zählen 
kann, vorwärts und rückwärts.
kann man ein Schieberegister verwenden?

Es soll nur einen hoch- und einen runterzähl-Pin geben!
Es soll gleichzeitig immer nur einer der sieben Ausgabepins high sein.
Pro Signal am jeweiligen auf/abwärtszähl Pin soll einen Schritt hoch 
oder runter gezählt werden.
Es soll möglich sein bevor der Zähler ganz hoch gezählt hat, mit einem 
Signal am runterzähl Pin die Zählrichtung umzukehren und in die 
entgegengesetzte Richtung zu zählen, und andersrum.

Im Wiki wird unter "Bidirektionales Schieberegister" eine Auf/Abwärts 
Zählerschaltung mit zwei Schieberegistern erklärt.
"...wird der parallele Eingang des einen Registers in gekreuzter Weise 
mit dem parallelen Eingang des anderen Registers verbunden und 
umgekehrt"

https://de.wikipedia.org/wiki/Schieberegister#Aufbau_eines_bidirektionalen_Schieberegisters

Kann ich etwas in der Art anwenden? Kann mir jemand etwas auf die 
Sprünge helfen was die Funktion angeht?
Es gibt ja noch Zähler die Zahlen in Binärcode ausgeben, z.B. CMOS 4510, 
aber ich denke damit wird es noch komplizierter?

Gibt's fertige Zähler Ics für derartige Anwendungen die nicht im BCD 
Code sondern wie beschrieben nur ein High ausgeben?
Hoffe Ihr könnt mir helfen!

Gruß

Janos

: Bearbeitet durch User
von posti (Gast)


Lesenswert?

Hi

Was hast Du vor?
Was soll gezählt werden und was möchtest Du bei den verschiedenen Stufen 
machen/auslösen?
Wie schnell soll das Ganze werden?

Bei einem Aufbau rein mit Logik-Bausteilen wirst Du einige Gatter 
brauchen.

Was spricht gegen einen µC?
7x Out für die Schritte 1-7
1x Richtung für hoch/runter
1x Takt
1x Reset
(10 benötigte I/O + 2x Versorgung, mindestens 12 'Beinchen')

MfG

von Janos P. (janoslon421)


Lesenswert?

Ich möchte damit 7 Relais schalten.
Sie schalten die Sekundärwicklungen eines Stufentrafos, immer nur eine, 
immer nur eine Stufe hoch oder runter.

posti schrieb:
> Was spricht gegen einen µC?

Dass ich keine Ahnung habe wie man das aufbaut :/

von c-hater (Gast)


Lesenswert?

Janos P. schrieb:

> ich wüsste gern wie man eine Zählerschaltung baut die bis sieben zählen
> kann, vorwärts und rückwärts.
> kann man ein Schieberegister verwenden?

Das wäre eher unglücklich. Das Problem ist hier der relativ hohe Aufwand 
für die Schaltung zur Herstellung eines wohldefinierten 
Anfangszustandes.

Schon etwas einfacher: ein binärer Vor-/Rückwartszahler und ein 
1-aus-8-Decoder (gibt's sogar beides zusammen in einem einzigen IC). 
Dann ist die Initialisierung mit einem kurzen Puls am Reseteingang des 
Zählers abgehandelt, also notfalls mit einem einfachen RC-Glied zu 
bewältigen.

Trotzdem wird's auch dann noch relativ aufwendig. Die nötige Logik zu 
Begrenzung der Zählweite ist nicht zu unterschätzen und auch die 
Aufbereitung der Steuersignale, die ja vermutlich aus mechanischen 
Schaltern/Tastern kommen sollen.

Das alles kostet schon noch etliche Gatter und FFs um den eigentlichen 
Kern der Sache herum, wenn's zuverlässig funktionieren soll.

> Es soll nur einen hoch- und einen runterzähl-Pin geben!

Das wäre eher unüblich. I.d.R. gibt es bei solchen Vor-/Rückwärtszählern 
einen Pin für die Zählrichtung und einen Takt-Pin. Auch deswegen wird 
die oben erwähnte Hilfslogik relativ aufwendig werden müssen.

> Hoffe Ihr könnt mir helfen!

Kauf dir einen µC. Da kann man die Funktionalität ganz genau wie von dir 
gewünscht problemlos in einen einzigen kleinen Stein einbauen. Sind 
vielleicht zwanzig oder dreißig Zeilen Programm für nötig.

Blöd ist allerdings, dass du dazu erstmal Programmieren lernen müsstest. 
Ist aber egal, Design von Digitalschaltungen beherrschst du ja 
offensichtlich genausowenig, irgendeinen Tod wirst du also sowieso 
sterben müssen und das Erlernen der µC-Programmierung nützt heutzutage 
definitiv deutlich mehr.

Die zu lösenden Probleme sind bei der Programmierung übrigens ziemlich 
genau die gleichen wie beim Aufbau aus Logik-ICs. Beim µC kann man aber 
(die als Anfänger praktisch unvermeidbaren) Fehler viel leichter 
korrigieren, indem man einfach das Programm verbessert und die nächste 
Version auf den µC schreibt, die dann (hoffentlich) schon besser 
funktioniert. Beim Logikgrab hingegen fängst du bei jeder Änderung 
praktisch wieder ganz von vorn mit dem Aufbau der gesamten Schaltung 
an...

von Jacko (Gast)


Lesenswert?

Dein Problem klingt erst mal halb-so-schlimm und könnte durch
ein Schieberegister (SR) gelöst werden.

Guckt man genauer hin, ist die Initialisierung (erst mal NUR
den Ausgang 3 auf HI schalten) schon recht aufwändig.

Die Bearbeitung von Tasten erfordert auch schon etliche
Logik-ICs, zusätzlich darf die MINUS-Taste einen Zähler
nicht unter NULL und die PLUS-Taste den Zähler nicht über 6
führen.

Das alles erfordert ein TTL-, oder CMOS-Grab großen
Ausmaßes, so dass entweder ein µC, oder

WARUM NICHT????

ein popliger Drehschalter doch eher angesagt ist!

von Jörg R. (solar77)


Lesenswert?

Janos P. schrieb:
> ich wüsste gern wie man eine Zählerschaltung baut die bis sieben zählen
> kann, vorwärts und rückwärts.
> kann man ein Schieberegister verwenden?
>
> Es soll nur einen hoch- und einen runterzähl-Pin geben!
> Es soll gleichzeitig immer nur einer der sieben Ausgabepins high sein.
> Pro Signal am jeweiligen auf/abwärtszähl Pin soll einen Schritt hoch
> oder runter gezählt werden.

Hallo Janos,

ich würde es evtl. mit diesen Bausteinen lösen:

Ein Up/Down Counter, ein 1 aus 10 Decoder und entsprechende Treiber.

Zähler Up/Down:
https://www.reichelt.de/ICs-C-MOS-DIL/MOS-40192/3/index.html?ACTION=3&GROUPID=2924&ARTICLE=12570
(das rechte der 2 Datenblätter)

1 Taster für hoch, 1 Taster für runter.

Decoder 1 aus 10:
http://www.reichelt.de/ICs-C-MOS-DIL/MOS-4028/3/index.html?ACTION=3&LA=446&ARTICLE=12587&GROUPID=2924&artnr=MOS+4028&SEARCH=4028

Für beide gibt es wohl Alternativen, aber die 2 vielen mir gerade ein.

Mir fällt jetzt nur kein Chip ein der Up/Down zählt und gleich in 1 aus 
10 ausgibt. Einen der als 7-Segment ausgibt kenne ich, aber der hilft 
dir leider nicht.

Gruß Jörg

: Bearbeitet durch User
von michael_ (Gast)


Lesenswert?

c-hater schrieb:
> Trotzdem wird's auch dann noch relativ aufwendig. Die nötige Logik zu
> Begrenzung der Zählweite ist nicht zu unterschätzen und auch die
> Aufbereitung der Steuersignale, die ja vermutlich aus mechanischen
> Schaltern/Tastern kommen sollen.

Geht schon.

Jörg R. schrieb:
> Mir fällt jetzt nur kein Chip ein der Up/Down zählt und gleich in 1 aus
> 10 ausgibt.

LS192

von Jörg R. (solar77)


Lesenswert?

michael_ schrieb:
> c-hater schrieb:
>> Trotzdem wird's auch dann noch relativ aufwendig. Die nötige Logik zu
>> Begrenzung der Zählweite ist nicht zu unterschätzen und auch die
>> Aufbereitung der Steuersignale, die ja vermutlich aus mechanischen
>> Schaltern/Tastern kommen sollen.
>
> Geht schon.
>
> Jörg R. schrieb:
>> Mir fällt jetzt nur kein Chip ein der Up/Down zählt und gleich in 1 aus
>> 10 ausgibt.
>
> LS192

Mit 1 aus 10 meine ich einen von 10 Ausgängen. Das macht der LS192 
nicht.

von c-hater (Gast)


Lesenswert?

michael_ schrieb:

> Geht schon.

Natürlich geht das.

Es ist eben nur vergleichweise sehr, sehr viel aufwendiger als eine 
Lösung mit einem µC.

Und es löst dann auch nur genau dieses eine konkrete Problem. Der µC 
kann aber dann auch noch nahezu unbegrenzt viele andere Logikprobleme 
lösen, die sich vielleicht in der Zukunft stellen werden...

von Janos P. (janoslon421)


Lesenswert?

Jörg R. schrieb:
> ich würde es evtl. mit diesen Bausteinen lösen:
>
> Ein Up/Down Counter, ein 1 aus 10 Decoder und entsprechende Treiber.


Das ist schon ein sehr guter Ansatz, vielen Dank dafür!

c-hater schrieb:
> Und es löst dann auch nur genau dieses eine konkrete Problem. Der µC
> kann aber dann auch noch nahezu unbegrenzt viele andere Logikprobleme
> lösen, die sich vielleicht in der Zukunft stellen werden...

Aus dem Grund werde ich wohl nicht drumrum kommen den Umgang mit µC zu 
erlernen.

c-hater schrieb:
> Blöd ist allerdings, dass du dazu erstmal Programmieren lernen müsstest.
> Ist aber egal, Design von Digitalschaltungen beherrschst du ja
> offensichtlich genausowenig, irgendeinen Tod wirst du also sowieso
> sterben müssen und das Erlernen der µC-Programmierung nützt heutzutage
> definitiv deutlich mehr.

Allerdings würde ich gern beide Tode sterben, ich werde erst mal 
probieren eine Digitalschaltung aufzubauen, fange

c-hater schrieb:
> bei jeder Änderung
> praktisch wieder ganz von vorn mit dem Aufbau der gesamten Schaltung
> an...

und wende mich dann frustriert dem µC zu.

: Bearbeitet durch User
von posti (Gast)


Lesenswert?

Hi

Viel Erfolg dabei :)
Wenn's doch nicht klappen will, wir sind ja noch hier ;)

MfG

von Jörg R. (solar77)


Lesenswert?

Hallo Janos,

hier noch 2 Anmerkungen zum 40192:

- der Chip hat einen Reseteingang. Den würde ich mit einer 
RC-Kombination beschalten um die Ausgänge beim einschalten der 
Stromversorgen zu reseten. D.h. das die Ausgänge auf "0" gesetzt werden.

- wenn Du den Chip mit Tastern hoch und runterzählen lässt musst Du die 
Taster entprellen.

#####
#####

Janos P. schrieb:
> Ich möchte damit 7 Relais schalten.
> Sie schalten die Sekundärwicklungen eines Stufentrafos, immer nur eine,
> immer nur eine Stufe hoch oder runter.

Hier könnte es zu einem Problem kommen wenn es sich um eine Wicklung mit 
mehreren Abgriffen handelt. Ich gehe davon aus das je ein Relaiskontakt 
an je einen Abgriff des Trafos kommt. Die andere Seite des 
Relaiskontankts (NO) ist mit den anderen Relaiskontakten (NO) verbunden 
und geht an den Ausgang. Sollte nun beim umschalten auf eine andere 
Stufe, wenn Up oder Down gedrückt wird, das betreffende Relais schneller 
anziehen als das bisher angezogene abfällt kommt es zu einem 
Kurzschluss.

Gruß Jörg

von Kurt A. (Gast)


Lesenswert?

Jörg R. schrieb:
> Hier könnte es zu einem Problem kommen wenn es sich um eine Wicklung mit
> mehreren Abgriffen handelt. Ich gehe davon aus das je ein Relaiskontakt
> an je einen Abgriff des Trafos kommt. Die andere Seite des
> Relaiskontankts (NO) ist mit den anderen Relaiskontakten (NO) verbunden
> und geht an den Ausgang. Sollte nun beim umschalten auf eine andere
> Stufe, wenn Up oder Down gedrückt wird, das betreffende Relais schneller
> anziehen als das bisher angezogene abfällt kommt es zu einem
> Kurzschluss.

Bei Relais mit Umschaltkontakte und richtiger Verschaltung sollte dies 
kein Problem sein.

von Jörg R. (solar77)


Lesenswert?

Kurt A. schrieb:
> Bei Relais mit Umschaltkontakte und richtiger Verschaltung sollte dies
> kein Problem sein.

Das muss ich mir mal aufzeichen, aber jetzt nicht mehr?
Oder hast Du eine Lösung?

: Bearbeitet durch User
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.