发布于 2011-08-27 22:27:12
3楼
L #OB1_SCAN_1 L 1 ==I JCN GT SET R "e;NOP B"e; L 0 T "e;GENERAL"e;.Prev_Second T "e;GENERAL"e;.Second T "e;GENERAL"e;.Minute T "e;GENERAL"e;.Hour// General bits//SimulateGT: A "e;Simulate"e; AN "e;MGSIM_ON"e; = "e;OGSIM_ON"e; S "e;MGSIM_ON"e; R "e;MGSIM_OFF"e; AN "e;Simulate"e; AN "e;MGSIM_OFF"e; = "e;OGSIM_OFF"e; S "e;MGSIM_OFF"e; R "e;MGSIM_ON"e;// Reset timer bits A "e;MGMSG_ACT"e; = "e;GENERAL"e;.MSG_ACT A "e;MGMSG_NS"e; = "e;GENERAL"e;.MSG_NS A "e;MGALM"e; = "e;GENERAL"e;.ALM A "e;MGALM_NS"e; = "e;GENERAL"e;.ALM_NS SET R "e;SEC_PULSE"e; R "e;MGMSG_ACT"e; R "e;MGMSG_NS"e; R "e;MGALM"e; R "e;MGALM_NS"e; A "e;Pulse_6Sec"e; R "e;Pulse_6Sec"e; A "e;Pulse_10Sec"e; R "e;Pulse_10Sec"e; A "e;MIN_PULSE"e; R "e;MIN_PULSE"e; A "e;HOUR_PULSE"e; R "e;HOUR_PULSE"e; A "e;DAY_PULSE"e; R "e;DAY_PULSE"e;// Generate timer bits L #OB1_PREV_CYCLE L "e;GENERAL"e;.Prev_Second +I T "e;GENERAL"e;.Prev_Second L 1000 >I JCN GB// Second pulse L "e;GENERAL"e;.Prev_Second L 1000 -I T "e;GENERAL"e;.Prev_Second SET S "e;SEC_PULSE"e;// 6 Seconds pulse L "e;GENERAL"e;.Temp6Sec + 1 T "e;GENERAL"e;.Temp6Sec L 6 >=I JCN GT10 S "e;Pulse_6Sec"e; L 0 T "e;GENERAL"e;.Temp6Sec// 10 Seconds pulseGT10: L "e;GENERAL"e;.Temp10Sec + 1 T "e;GENERAL"e;.Temp10Sec L 10 >=I JCN GT_M S "e;Pulse_10Sec"e; L 0 T "e;GENERAL"e;.Temp10Sec// Minute pulseGT_M: L "e;GENERAL"e;.Second + 1 T "e;GENERAL"e;.Second L 60 >=I JCN GB S "e;MIN_PULSE"e; L 0 T "e;GENERAL"e;.Second// Hour pulse L "e;GENERAL"e;.Minute + 1 T "e;GENERAL"e;.Minute L 60 >=I JCN GB S "e;HOUR_PULSE"e; L 0 T "e;GENERAL"e;.Minute// Day pulse L "e;GENERAL"e;.Hour + 1 T "e;GENERAL"e;.Hour L 24 >=I JCN GB S "e;DAY_PULSE"e; L 0 T "e;GENERAL"e;.Hour// Always oneGB: AN "e;One"e; S "e;One"e;// Alwasy zero A "e;Zero"e; R "e;Zero"e;// Toggle scan AN "e;ScanToggle"e; = "e;ScanToggle"e;// 1 Hz block L "e;GENERAL"e;.Prev_Second L 500 >I = "e;Pulse_2Hz"e;// 1/2 Hz block A "e;SEC_PULSE"e; JCN GB_E AN "e;Pulse_1Hz"e; = "e;Pulse_1Hz"e;GB_E: NOP 0