Flanken erkennt man einfach daran, dass sich der vorherige Zustand vom aktuellen unterscheidet.
Nach dem Check wird der aktuelle Zustand zum "vorherigen".
Steigend ist, wenn der alte Zustand =0 war und der neue=1
programmtechnisch kann man das verschieden lösen, je nach Umfeld.
In deinem Fall stellt der Zustand"alt" zusätzlich ja auch den Betriebsmodus dar (0= Bypass, 1=Sync)
Persönlich würde ich also Alt/Neu zu einer Zahl 0-3 kombinieren und einfach vier verschiende Sub-Programm anspringen
01---> Start --> Start Signal=1, Hold-Counter starten, clock 2:1
11---> Sync---> clock 2:1, Hold-counter runterzählen (bei 0 Start-Signal=0)
10---> Stop --> Stop Signal=1, Hold-Counter starten, clock 1:1
00---> Bypass> Hold-counter runterzählen (bei 0 Stop-Signal=0) , clock 1:1
Wie gesagt, man könnte auch einen Timer für das "Hold" beschäftigen
Den würde man beim Status-wechsel enablen, und der setzt einfach beide Start + Stop Output auf NULL, es kann ja nur bei einem ein 1-er gewesen sein. dann disabled er sich selbst.
Lesezeichen