11.1 Beispiele

Es werden in diesem Abschnitt einige einfache Schaltwerke durch ihr Zustandsdiagramm dargestellt. Es wird ausdrücklich zum Spielen mit diesen interaktiven Graphiken eingeladen. Der Entwurf wird erst im nächsten und eine Diskussion der Beispiele im letzten Abschnitt dieses Kapitels vorgenommen.

Nach dem Doppelklick auf das erste Schaltwerk bitte mit der Taste h bei fokussiertem Zustandsdiagramm und danach bei fokussierter Übergangstabelle die Hilfe anfordern. Die Interaktionen wirken immer auf beide Fenster.

Einfaches Schaltwerk mit drei Schritten ohne Input

demofsm( [2; 3; 1; 3] , {'A';'B';'C';'D'} , 4 )

2-Bit-Binärzähler ohne Stopp und Reset

demofsm( [1+mod(1:4,4)]' )

Binärzähler mit Stopp(1) ohne Reset

demofsm([1:4; 1+mod(1:4,4)]')

Binärzähler mit Stopp(1) und Reset(3)

Als Matlab-Skript

n = 4; 
f = [1:n; 1+mod(1:n,n); ones(1,n)]'
demofsm(f)

Direkt:

demofsm([1:4; 1+mod(1:4,4); ones(1,4)]')

Die nachfolgenden Beispiele können durch entsprechende Eintragung der Parameter auch mit t1shell dargestellt werden:

Vorwärts-Rückwärtszähler mit Stopp(1), Vorwärts(2), Rückwärts(3)

n = 8;   % Anzahl der Zustände 
f = [1:n; 1+mod(1:n,n); 1+mod(-1:n-2,n)]'  % Übergangstabelle
demofsm(f)

Vorwärts-Rückwärtszähler mit Stopp(1), Vorwärts(2), Rückwärts(3) und Reset(4)

n = 32;   % Anzahl der Zustände 
f = [1:n; 1+mod(1:n,n); 1+mod(-1:n-2,n); ones(1,n)]'  % Übergangstabelle
demofsm(f)

Zufälliges Schaltwerk:

n = 1 + ceil(7*rand);  % zufällige Anzahl von Zuständen (1...8)
m = 1 + ceil(3*rand);  % zufällige Anzahl von Inputmöglichkeiten (1...4)
demofsm(ceil(n*rand(n,m)))