分享一个自创的设备运行时间计时的程序,秒,分,时,天,类似时钟,脉冲计时利用了内存时钟的秒脉冲。
在FB块里,输入变量为START, PLUSE ,RESET :BOOL
STAT变量:
SECOND word
MINUTE word
HOUR word
DAY word
FP1 bool
FP2 bool
FP3 bool
FP4 bool
A #START //开始的条件
A #PLUSE //利用内存时钟脉冲1S的
FP #FP1 //在STAT里定义的变量,其余的上升沿也要这样定义;
JCN _001
L #SECOND
INC 1
T #SECOND //时间秒数累加
_001: NOP 0
A(
L #SECOND
L 60
>I
)
FP #FP2
JCN _002
L 1
T #SECOND //时间秒数循环
L #MINUTE
INC 1
T #MINUTE //时间分数累加
_002: NOP 0
A(
L #MINUTE
L 60
>I
)
FP #FP3
JCN _003
L 1
T #MINUTE //时间分数循环
L #HOUR
INC 1
T #HOUR //时间时数累加
_003: NOP 0
A(
L #HOUR
L 24
>I
)
FP #FP4
JCN _004
L 1
T #HOUR //时间时数循环
L #DAY
INC 1
T #DAY //时间天数累加
_004: NOP 0
A #RESET
JCN _005
L 0
T #SECOND
T #MINUTE
T #HOUR
T #DAY
_005: NOP 0
每次调用FB都会生成一个DB块,如果用的不是很多的话也还好;