lauflicht mit jk-ff´s

OP #3159927
Lesenswert?

guten tag elektronik freunde,

habe folgendes problem:
muss ein lauflicht mit jk-ff realisieren.
1 eigang u:
wenn u=0-->von links nach rechts laufen(4 leds)
wenn u=1-->von rechts nach links laufen(4 leds)

led1 leuchtet-->alle aus-->led2 leuchtet-->alle aus usw.

wie sieht die warheitstabelle und das zustandsdiagramm aus?
muss ja von alle aus=0000 auf jeden zustand "springen"

hoffe ihr versteht mein problem:)

danke
#3160006
Lesenswert?

Verbinde J mit Q und K mit Q\ um die Schiebefunktion zu realisieren.
Jetzt brauchst du noch einen Umschalter um zwischen den Q-Ausgängen vom 
linken oder rechten Flipflop zu wählen.

Natürlich setzt das voraus, dass beim Start eines und zwar nur eines 
gesetzt ist. Das könnte asynchron zu Beginn gemacht werden.

Man kann das natürlich synchron und sicher machen, wenn man aus jeder 
ungültigen Kombination synchron auf 1000 springt. Alles machbar.
Ungültige Kombinationen:
0000 und alle Kombinationen mit mehr als einer 1.
Gast #3160011
Lesenswert?

Kam mir nur so vor, weil du direkt nach der Lösung gefragt hast.

Du kannst entweder 4 + 1 Zustände codieren (für jede LED einen Zustand 
und für "alle aus" einen Zustand) oder 8 Zustände (für jeden Schritt 
einen eigenen Zustand)

Falls du 4+1 codierst, musst du halt in dem Zustand "alle aus" 
auswerten, welches der Zustand davor war und anhand dessen und des 
Richtungssignals den Folgezustand bestimmen.

Falls du 8 Zustände codierst, gehst du immer "stur" durch die Reihe und 
drehst mit dem Richtungssignal nur die Ablaufrichtung um. Also quasi 
einen Zähler, dessen Richtung umgedreht wird.
Gast #3160022
Lesenswert?

Jetzt hab ich noch ne ganz fiese Idee:

Mit dem angesprochenen Schieberegister kommst ja nicht auf diese 
"Zwischenzustände 0000".
Man könnte jetzt mit nem Trick arbeiten, indem man das Taktsignal selbst 
auscodiert (setzt voraus, dass das Verhältnis 50/50 ist).

Die Ausgänge des Schieberegisters werden über jeweis ein UND-Gatter 
geführt und mit dem Takt sozusagen enabled.

Also immer, wenn der Takt low ist, wird der Ausgang des Schieberegisters 
nicht mehr auf die LED geführt..
#3160040
Lesenswert?

Lösung mit alle 4LEDs "aus" dazwischen:

Nimm 8 JK-FFs und benutze nur den Q-Ausgang von jedem 2. FF zur Anzeige.
Verbinde J mit Q und K mit Q\ um die Schiebefunktion zu realisieren.
Jetzt brauchst du noch einen Umschalter um zwischen den Q-Ausgängen vom
linken oder rechten Flipflop zu wählen.

Natürlich setzt das voraus, dass beim Start eines und zwar nur eines
gesetzt ist. Das könnte asynchron zu Beginn gemacht werden.

Man kann das natürlich synchron und sicher machen, wenn man aus jeder
ungültigen Kombination synchron auf 10000000 springt. Alles machbar.
Ungültige Kombinationen:
00000000 und alle Kombinationen mit mehr als einer 1.


Das Ganze geht mit weniger Aufwand mit D-FF.

JK-FF sind eigentlich nur für Auszubildende gedacht. :-)
OP #3160068
Lesenswert?

ok erstens einmal vielen dank für eure schnelle hilfe!!:)
bin in digitaltechnik nicht besonders fit:)
problem ist dass ich wahrheitstabelle und kv-diagramme mache und mit 8 
ff dauert das glaube ich etwas...und richtig ich bin azubi:)

wir haben immer zuerst zustandsdiagrmm gemacht, daraus wht und daraus 
wiederum kv-diagramme hier mein ansatz:

u=richtung

u-------------n+1(folgezustand)
0000 aus------|0001
0001 led4-----|0010
0010 aus------|0011
0011 led3-----|0100
0100 aus------|0101
0101 led2-----|usw.
0110 aus
0111 led1(vorne beginnen)
-----
1111 led1
1110 aus
1101 led2
1100 aus
1011 led3
1010 aus
1001 led4
1000 aus(wieder von vorne)

kann man das so realisieren wenn ja wie viele ff´s und wie kann ich das 
auf 4 leds konvertieren??

vieln dank im vorraus:)
Gast #3160119
Lesenswert?

Dein Ansatz ist schonmal richtig.

Wie du selber siehst, hast du dann 8 Zustände, welche sich mit 3 Bit 
abbilden lassen.

000, 001, 010, .... 111

Der Folgezustand ergibt sich dann eigentlich nur aus dem 
Richtungssignal. Also gehst du einen Zustand weiter oder einen zurück.

Wieviele FlipFlops du dazu brauchst, kannst du eigentlich selber 
beantworten. Denn in den FlipFlops legst du das ab, was quasi 
"gespeichert" werden muss. Und das ist dein aktueller Zustand. Da es 
acht Zustände gibt, kannst du das mit 3 FlipFlops abspeichern. (2^3).

Das Konvertieren auf ddie LEDs machst du dann anhand der Zustände der 
FlipFlops.

in deinem Beispiel wäre das exemplarisch:

LED4 soll im Zustand 001 leuchten. (FF(2)=0, FF(1)=0, FF(0)=1)
Also gilt folgene Gleichung für LED4 :
LED4 = /FF(2) AND /FF(1) AND FF(0)

Die entpsrechenden Gleichungen stellst du dann für alle 4 LEDs auf und 
kannst sie dann mit KV vereinfachen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren