恭喜,你发布的帖子
发布于 2016-11-07 13:27:29
3楼
L #PRE
T #_TMR.PRE //以上程序下装预置值到#_TMR.PRE
SET //置位RLO
A #Enable Timer
= #TMR.EN //只要 #Enable Timer得电,那么#TMR.EN 就得电
SET
R #_TMR.TT
R #_TMR.DN //置位RLO只要一执行程序#_TMR.TT和 #_TMR.DN 都被复位
AN #_TMR.EN
JC Clr //#_TMR.EN不为1就往下执行程序,否者跳转到Clr
L #_TMR.PRE
L #_TMR.ACC
>=D //#_TMR.PRE>=#_TMR.ACC不跳转,就是累加时间未到预置时间
JCN Done
S #_TMR.TT //置位#_TMR.TT
L “Pre Scan Timer”
+D
T #_TMR.ACC //将这个“Pre Scan Timer” 加到#_TMR.ACC里,就是时间的累加
L #_TMR.PRE
<D //经过相加后的累加时间再与预置值进行比较,如果#_TMR.PRE>#_TMR.ACC就跳转到END,否者接着执行
JC End
Done : SET
R #_TMR.TT //复位#_TMR.TT
S #_TMR.DN //置位#_TMR.DN
JU End
Clr : L 0
T 3_TMR.ACC
End : SET
SAVE
这段程序的意识就一旦有启动信号#TMR.EN就开始执行程序,否是就将3_TMR.ACC写0;有启动信号后执行#_TMR.ACC
的累加,一旦大于#_TMR.PRE就R #_TMR.TT和S #_TMR.DN 否则 S #_TMR.TT 和R #_TMR.DN
请填写推广理由:
分享
只看
楼主