时间转换
运算符转换时间值 (TIME
或者 LIME
) 转换为指定的数据类型并返回此类型转换的值。
调用语法: <TIME_TO<目标类型> ( <操作数> ), <LTIME_TO<目标类型> ( <操作数> )
操作数 | 数据类型 | 描述 |
---|---|---|
变量或文字 |
|
操作员 | 操作员 | 例子 | 返回值 | 描述 |
---|---|---|---|---|
|
| |||
|
| |||
|
| |||
|
| |||
|
| TIME_TO_BOOL(T#0MS); TIME_TO_BOOL(T#59ms); LTIME_TO_BOOL(T#0MS); LTIME_TO_BOOL(T#59ms); |
| 运营商返回 |
|
| |||
|
| LTIME_TO_DATE(LTIME#2us1ns); |
| 语法:D#yyyy-MM-dd |
|
| |||
|
| TIME_TO_DT(T#5d4h3m2s1ms); LTIME_TO_DT(LTIME#2us1ns); |
| 语法:DT#yyyy-MM-dd-hh:mm:ss |
|
| |||
|
| LTIME_TO_INT(LTIME#2us1ns); |
| |
|
| 语法:LDATE#yyyy-MM-dd | ||
|
| 句法: | ||
|
| |||
|
| TIME_TO_LREAL(T#5d4h3m2s1ms); |
| |
| - | |||
|
| 句法: | ||
|
| TIME_TO_LWORD(T#5d4h3m2s1ms); LTIME_TO_LWORD(LTIME#2us1ns); |
| |
|
| TIME_TO_REAL(T#1d2h3m4s5ms); LTIME_TO_REAL(LTIME#2us1ns); |
| |
|
| |||
|
| TIME_TO_STRING(T#0MS); |
| 重要提示:输入的值作为字符串左对齐,如果太长会被截断。因此,声明返回变量时应足够长,以便字符串有足够的空间而无需进行任何操作。 |
- |
| LTIME_TO_TIME(LTIME#2us1ns); |
| |
|
| TIME_TO_TOD(T#1d2h3m4s5ms); LTIME_TO_TOD(LTIME#2us1ns); |
| |
|
| |||
|
| |||
|
| TIME_TO_ULINT(T#1d2h3m4s5ms); |
| |
|
| |||
|
| |||
|
| TIME_TO_WSTRING(T#1d2h3m4s5ms); LTIME_TO_WSTRING(T#0US); |
| 输入的值作为字符串左对齐,如果太长会被截断。因此,声明返回变量时应足够长,以使字符串有足够的空间而无需进行任何操作。 |
ST 中的声明
FUNCTION_BLOCK FB_ConvertTimeAndDate VAR ltReturn_1: LTIME; lwReturn_2: LWORD; rReturn_3: REAL; strReturn_4: STRING; timReturn_5: TIME; todReturn_6: TIME_OF_DAY; uliReurn_7: ULINT; wstrReturn_8: WSTRING; wstrReturn_80: WSTRING; uliReurn_70: ULINT; todReturn_60: TIME_OF_DAY; timReturn_50: TIME; strReturn_40: STRING; rReturn_30: REAL; lwReturn_20: LWORD; ltReturn_10: LTIME; ltReturn_11: LTIME; lwReturn_21: LWORD; rReturn_31: REAL; strReturn_41: STRING; timReturn_51: TIME; todRedurn_61: TIME_OF_DAY; uliReurn_71: ULINT; wstrReturn_81: WSTRING; ltReturn_12: LTIME; xReturn_9: BOOL; xReturn_90: BOOL; xReturn_91: BOOL; xReturn_92: BOOL; dateReturn_6: DATE; timReturn_60: TIME; wReturn_61: WORD; todReturn_61: TIME_OF_DAY; END_VAR
在 ST 中的实现
FUNCTION_BLOCK FB_ConvertTimeAndDate VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR ltReturn_1: LTIME; lwReturn_2: LWORD; rReturn_3: REAL; strReturn_4: STRING; timReturn_5: TIME; todReturn_6: TIME_OF_DAY; uliReurn_7: ULINT; wstrReturn_8: WSTRING; wstrReturn_80: WSTRING; uliReurn_70: ULINT; todReturn_60: TIME_OF_DAY; timReturn_50: TIME; strReturn_40: STRING; rReturn_30: REAL; lwReturn_20: LWORD; ltReturn_10: LTIME; ltReturn_11: LTIME; lwReturn_21: LWORD; rReturn_31: REAL; strReturn_41: STRING; timReturn_51: TIME; todRedurn_61: TIME_OF_DAY; uliReurn_71: ULINT; wstrReturn_81: WSTRING; ltReturn_12: LTIME; xReturn_9: BOOL; xReturn_90: BOOL; xReturn_91: BOOL; xReturn_92: BOOL; dateReturn_6: DATE; timReturn_60: TIME; wReturn_61: WORD; todReturn_61: TIME_OF_DAY; END_VAR ltReturn_1 := DT_TO_LTIME(DT#2019-9-9-23:59:59); ltReturn_10 := DT_TO_LTIME(DT#1970-1-1-0:0:0); ltReturn_11 := DT_TO_LTIME(DT#1970-1-2-0:0:1); ltReturn_12 := DT_TO_LTIME(DT#1970-1-3-12:30:30); lwReturn_2 := TIME_TO_LWORD(T#5D4H2M3S2MS); lwReturn_20 := TIME_TO_LWORD(T#0D0H0M0S0MS); rReturn_3 := TIME_TO_REAL(T#5D4H2M3S2MS); rReturn_30 := TIME_TO_REAL(T#0D0H0M0S0MS); strREturn_4 := TIME_TO_STRING(T#5D4H2M3S2MS); strREturn_40 := TIME_TO_STRING(T#0D0H0M0S0MS); timReturn_5 := TOD_TO_TIME(TOD#23:59:59.999); timReturn_50 := TOD_TO_TIME(TOD#0:0:0.000); timReturn_51 := TOD_TO_TIME(TOD#0:0:0.001); dateReturn_6 := TOD_TO_DATE(TOD#23:59:59.999); timReturn_60 := TOD_TO_TIME(TOD#0:0:0.000); wReturn_61 := TOD_TO_WORD(TOD#0:0:0.001); uliReurn_7 := DATE_TO_ULINT(D#2019-9-9); uliReurn_70 := DATE_TO_ULINT(D#1970-1-1); uliReurn_71 := DATE_TO_ULINT(D#1970-1-2); wstrReturn_8 := DATE_TO_WSTRING(D#2019-9-9); wstrReturn_80 := DATE_TO_WSTRING(D#1970-1-1); wstrReturn_81 := DATE_TO_WSTRING(D#1970-1-2); xReturn_9 := DATE_TO_BOOL(D#2019-9-9); xReturn_90 := DATE_TO_BOOL(D#1970-1-1); xReturn_91 := DATE_TO_BOOL(D#1970-1-2); xReturn_92 := DATE_TO_BOOL(D#1970-1-3);


