Moeller / OB_PREV_CYCLE

Hab mir das jetzt mal selbst geschrieben:
Code:
VAR_OUTPUT
	Zycl:	UINT;
END_VAR

VAR
	Letzte:	UINT := 0;
	TaktZeit:	UINT := 32768;
	MachTakt1:	TimePulse;
	TaktSet:	BOOL;
	Puls:	BOOL;
	Zeit1:	UINT;
END_VAR
(** Zwischenspeicher Letzte Zeit **)
LD Zeit1
ST Letzte
(** Takt Aufrufen **)
CAL MachTakt1 ( Set := TaktSet,
	ReSet := ,
	PresetTime := TaktZeit
	|
	Puls:= PulseOutput ,
	Zeit1:= ElapsedTime )
(** Takt Init **)
LDN Puls
ST TaktSet
(** Durchlauf OK ? **)
LD Letzte
GT Zeit1
RETC 
(** Wenn Puls neu generiert wird, Letzte Zykluszeit annehmen **)
LD Zeit1
SUB Letzte
ST Zycl
RET
 
Zurück
Oben