Probleme beim Zustandsgraphen

OP (Firma: Pitahaya) #6548559
Lesenswert?
• ▲
▼
Hallo , ich tue mir bei einer Schaltwerkaufgabe ziemlich schwer:

Alfred möchte ein LED Blinklicht entwerfen, welches eine LED mit 50% 
Duty Cycle % fslow=1 Hz blinken lässt.
Über eine Taste T möchte er die Frequenz des Blinklichts auf ffast=2 Hz 
erhöhen, solange er auf die Taste T drückt.
Wird die Taste losgelassen blink die LED wieder mit fslow=1 Hz.
Das Umschalten zwischen slow & fast ist nur möglich, während die LED aus 
ist.

Zusätzlich schließt Alfred noch einen Taktgenerator, welches ein Signal 
von fclk=4 Hz erzeugt.
Dieses nutzt er zusätzlich als Taktquelle.

Zeichnen Sie denn Zustandsgraphen


Vorgabe zu den Signalen:
Taste T gedrückt  Signal T=0
Taste T nicht gedrückt Signal T=1
LED an Signal L=1
LED aus Signal L=0

Ich tue mir in 2 Sachen schwer:
inwiefern beeinflusst der Clk meinen Graphen?
Da er als Taktgenerator genutzt wird, dachte ich mir er müsste eine 
Eingangsvariable sein.

Da der Umschaltvorgang nur möglich ist während die LED aus ist.
Heisst das dass ich die LED von fslow ausschalten muss und dann die 
Taste gedrückt halten muss somit T=0 & L=1 folgt?
Moderator (Firma: Titel) Persönliche Seite #6548605
Lesenswert?
• ▲
▼
Thomas L. schrieb:
> inwiefern beeinflusst der Clk meinen Graphen? Da er als Taktgenerator
> genutzt wird, dachte ich mir er müsste eine Eingangsvariable sein.
Nein, er sorgt lediglich implizit dafür, das ein Zustandsübergang 
überhaupt stattfindet und für das Speichern des aktuellen Zustands.

Ansonsten ist die Aufgabe recht einfach: für mich gibt es ausgehend vom 
Ruhezustand "LED_AUS_T" mit T wie "Tasterabfrage" 2 Pfade.

Der "Schnellere" davon wird genommen, wenn die Taste gedrückt ist. Er 
besteht nur aus 1 einzigen weiteren Zustand "LED_EIN_F" mit F für 
"fast". Danach geht es gleich zurück nach "LED_AUS_T". Die Zustände sind 
also LED_AUS_T --> LED_EIN_F --> LED_AUS_T --> LED_EIN_F --> LED_AUS_T 
--> ...

Ist die Taste nicht gedrückt, dann wird der "langsame" Pfad genommen in 
dem zusätzliche weitere Zustände mit S für "slow" eingefügt werden:
LED_AUS_T --> LED_EIN_S1 --> LED_EIN_S2--> LED_AUS_S1 --> LED_AUS_T --> 
LED_EIN_S1 --> LED_EIN_S2--> LED_AUS_S1 --> LED_AUS_T --> ...

Und jeweils im Zustand "LED_AUS_T" wird abhängig von der Taste 
entschieden, in welchem der beiden Pfade es weitergeht.
Gast #6557008
Lesenswert?
• ▲
▼
@Atp P.
Deine Darstellung ist leider "mangelhaft", wie würde damit z. B. eine 
Hardware-Lösung aussehen???
An den Pfeilen sollte bei dieser Aufgabe nur das Eingangssignal T 
stehen. Das Ausgangssignal L sollte nur vom Zustand abhängen. Die 
Zustände benötigen symbolische Namen oder gleich eine konkrete 
Kodierung. Jeder Pfeil sollte eine Spitze besitzen.
Sieh Dir bitte die Entwurfsmethode mit FSM (Zustandsgraph) genau an!

Gruß
WIRO
Gast #6557490
Lesenswert?
• ▲
▼
Gibt es noch andere Unklarheiten oder ist der Entwurfsweg bis zur 
Schaltung klar?

@Atp P.:
Phi steht für "beliebig", da ist es egal, ob das Eingangssignal 0 oder 1 
ist. In den beiden genannten Zuständen ist also keine Entscheidung 
erforderlich, weil keine Verzweigung erfolgt.
Mein Graph hat übrigens eine spezielle Eigenschaft um etwas Energie zu 
sparen, klar?

Gruß
WIRO
Beitrag #6557998 wurde von einem Moderator gelöscht.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.