www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Einfaches Logic Problem


Autor: Logomat (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe Logikgatter (AND OR NAND XOR NOT) und weiterhin 
Ein-/Ausschaltverzögerung, RS Flip Flops, JK Flip Flops und Monostabile 
Kippstufen zur Verfügung.
Nun möchte ich mit einem Eingang (Taster) zwei Lampen ein- und 
ausschalten: Die erste mit einem kurzen Druck, die zweite mit einem 
langen Druck. Die zweite habe ich schon hinbekommen: Eingang -> 
Einschaltverzögerung -> JK FlipFlop. Den ersten kriege ich nicht 
gebacken, so dass dieser bei langem Drücken immer mitschaltet. Das kann 
doch nicht so schwer sein ?!

Logomat

Autor: Björn Wieck (bwieck)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Logomat wrote:
> Hallo,
>
> ich habe Logikgatter (AND OR NAND XOR NOT) und weiterhin
> Ein-/Ausschaltverzögerung, RS Flip Flops, JK Flip Flops und Monostabile
> Kippstufen zur Verfügung.
> Nun möchte ich mit einem Eingang (Taster) zwei Lampen ein- und
> ausschalten: Die erste mit einem kurzen Druck, die zweite mit einem
> langen Druck. Die zweite habe ich schon hinbekommen: Eingang ->
> Einschaltverzögerung -> JK FlipFlop. Den ersten kriege ich nicht
> gebacken, so dass dieser bei langem Drücken immer mitschaltet. Das kann
> doch nicht so schwer sein ?!
>
> Logomat

Hausaufgaben...
Aber ich bin ja heute mal nicht so. Ein XOR könnte hilfreich sein...

Viel Spass

Autor: Logomat (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, keine Hausaufgabe! Nur ein Anfall von vorübergehender geistiger 
Umnachtung oder so etwas. Mit dem XOR krieg ich's auch nicht hin (1. 
Eingang am Taster, 2. nach der Einschaltverzögerung). Nochmal zur 
Verdeutlichung: Die erste Lampe soll NICHT umschalten wenn der Taster 
lang gedrückt wird. Ich steh irgendwie voll auf dem Schlauch!

Autor: Franz Steger (dasteger)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Deine Schaltung funkioniert soweit? D.h. des geht die erste Lampe an, 
verzögert dazu geht die zweite Lampe an jedoch bleibt die erste Lampe 
auch an?

Dann würd ich an deiner Stelle einfach vom Ausgang für die Lampe Zwei 
(die, die nach langem Tastendruck brennen soll) nochmal in nen Inverter 
rein und dann in ein AND-Gater. Jetz noch deinen Ausgang für die zweite 
Lampe in das UND-Gater (2ter Eingang). Am Ausgang hast du dann zumindest 
ein Signal - das angeht wenn du die erste Lampe anschalten willst und 
ausgeht sobald die zweite  Lampe angeht.
Is zwar immer noch nicht genau die Lösung die du dir wünschst aber n 
Anfang.

Sind deine Flip-Flops nicht Flankengesteuert - wenn doch Versuchs mal 
damit zu schalten! (Steigende Flanke = Taste drücken, Fallende Flanke = 
Taste loslassen).

Autor: Logomat (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal genau die Funktion:

Taster kurz (< 1 s) drücken: Lampe 1 wechelt den Zustand (ein->aus / 
aus->ein), Lampe 2 bleibt wie sie ist.

Taster lang (> 1 s) drücken: Lampe 2 wechselt den Zustand, Lampe 1 
bleibt wie sie ist.

Im Moment funktioniert Lampe 2 schon wie sie soll mit diesem Aufbau:

Taster ->
Einschaltverzögerung (Ausgang geht erst nach 1 s auf High und sofort mit 
dem Eingang auf Low) ->
JK Flip Flop (in der E-Technik würde man dass Stromstoßrelais nennen); 
Mit jedem Impuls schaltet der Ausgang um.

Franz: Sorry, kann ich nicht folgen: Ich soll den Ausgang der Lampe 2 
und den Ausgang nochmal invertiert auf ein UND Gatter geben ? Selbiges 
wird dann immer LOW ausgeben...

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also, ganz einfach:

  a.) Das erste Signal ist die Taste selbst.
  b.) Das zweite Signal ist eine Einschaltverzögerung der Taste.

Nun hast Du das Problem, dass Du effektiv zwei flankengesteuerte 
Kippglieder steuern willst, und zwar nach folgendem Prinzip:

  1.)  Taste wechselt von High nach Low UND Einschaltverzögern ist Low
         --> Lampe 1 wechseln

  2.)  Einschaltverzögerung wechselt von Low nach High
         --> Lampe 2 wechseln

So solltest Du auf die Lösung kommen.

Autor: Logomat (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm, verzeihung, ich finde das immer noch nicht "ganz einfach". Genau in 
(1) liegt ja das Problem, der Rest ist Pillepalle.

Habe nun mal die Einschaltverzögerung und den Taster invertiert auf ein 
Oder-Gatter gelegt. Das funktionert, aber wenn die Einschaltverzögerung 
durchschaltet, geht natürlich auch L1 mit an :-(

Autor: Logomat (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Scheint doch schwerer zu sein als gedacht ?

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du die erste Lampe schon beim Runterdrücken des Tasters angehen 
lassen willst, geht es - gar nicht. Das geht nur, wenn du das loslassen 
auswertest, und dann erst schaltest.

Starte mit dem Taster eine monostabile Kippstufe, und bau dir eine 
Logik, die beim Loslassen einen Impuls liefert. Mit dem toggelst du dann 
die FlipFlops für die erste oder zweite Lampe, abhängig davon, ob die 
Kippstufe noch aktiv oder schon aus ist. Dazu noch ein Rücksetzsignal 
für die Kippstufe, damit man auch mal schnell die erste Lampe ein- und 
wieder ausschalten kann.

So ungefähr müsste es funktionieren...

Oliver

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Scheint doch schwerer zu sein als gedacht ?

Nein, Pippi-einfach, Du siehst es nur nicht, z.B. mit JK-Kippglied:

  Wann wird ein JK-Kippglied zum T-Flip-Flop?
    --> Wenn J und K beim Taktimpuls "1" sind.

  Wann ändert sich der Zustnad des JK-Kippgliedes nicht?
    --> Wenn J und K beim Taktimpuls "0" sind.

Also:

Invertierter Taster auf den Takt-Eingang des (flankengesteuerten) 
JK-Kippglieds und das invertierte einschaltverzögerte Signal auf J und 
K. Fertig.

Dran denken: Taster entprellen!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.