恭喜,你发布的帖子
发布于 2016-05-16 16:46:21
12楼
//读取CPU系统时间
FUNCTION FC20 : VOID
TITLE = 'Block Title'
//
// Block Comment...
//
VERSION: '1.0'
AUTHOR: baikai
NAME: Sys_time
FAMILY: baikai
KNOW_HOW_PROTECT
VAR_OUTPUT
// Output Parameters
year:INT;
month:INT;
day:INT;
hour:INT;
mins:INT;
second:INT;
week:INT;
END_VAR
VAR_TEMP
// Temporary Variables
temp11:INT;
temp10:INT;
temp12:DT;
date_time:ARRAY[0..8] OF BYTE;
TS:WORD;
week_no:INT;
END_VAR
temp11:=READ_CLK(CDT := temp12 // OUT: DATE_AND_TIME
); // INT
temp10:=BLKMOV(SRCBLK :=temp12 // IN: ANY
,DSTBLK :=date_time // OUT: ANY
); // INT
year:=BCD_TO_INT(date_time[0])+2000;
month:=BCD_TO_INT(date_time[1]);
day:=BCD_TO_INT(date_time[2]);
hour:=BCD_TO_INT(date_time[3]);
mins:=BCD_TO_INT(date_time[4]);
second:=BCD_TO_INT(date_time[5]);
TS:=BYTE_TO_WORD(date_time[7]);
week_no:=WORD_TO_INT(ts AND W#16#F) -1;
IF week_no = 0 THEN
week:= 7;
ELSE
week:=week_no;
END_IF;
END_FUNCTION
自己做的,已经测试过
请填写推广理由:
分享
只看
楼主