高速計數(shù)器指令的初始化的步驟如下:
(1)用首次掃描時接通一個掃描周期的特殊內(nèi)部存儲器SM0.1去調用一個子程序,完成初始化操作。因為采用了子程序,在隨后的掃描中,不必再調用這個子程序,以減少掃描時間,使程序結構更好。
(2) 在初始化的子程序中,根據(jù)希望的控制設置控制字(SMB37、SMB47、SMB137、SMB147、SMB157),如設置SMB47=16#F8,則為:允許計數(shù),寫入新當前值,寫入新預置值,更新計數(shù)方向為加計數(shù),若為正交計數(shù)設為4×,復位和起動設置為高電平有效。
(3)執(zhí)行HDEF指令,設置HSC的編號(0-5),設置工作模式(0-11)。如HSC的編號設置為1,工作模式輸入設置為11,則為既有復位又有起動的正交計數(shù)工作模式。
(4)用新的當前值寫入32位當前值寄存器(SMD38,SMD48,SMD58 ,SMD138, SMD148, SMD158)。如寫入0,則清除當前值,用指令MOVD 0,SMD48實現(xiàn)。
(5)用新的預置值寫入32位預置值寄存器(SMD42 ,SMD52, SMD62, SMD142 ,SMD152, SMD162)。如執(zhí)行指令MOVD 1000,SMD52,則設置預置值為1000。若寫入預置值為16#00,則高速計數(shù)器處于不工作狀態(tài)。
(6)為了捕捉當前值等于預置值的事件,將條件CV=PV中斷事件(事件13)與一個中斷程序相聯(lián)系。
(7)為了捕捉計數(shù)方向的改變,將方向改變的中斷事件(事件14)與一個中斷程序相聯(lián)系。
(8)為了捕捉外部復位,將外部復位中斷事件(事件15)與一個中斷程序相聯(lián)系。
(9)執(zhí)行全局中斷允許指令(ENI)允許HSC中斷。
(10)執(zhí)行HSC指令使OYES-200對高速計數(shù)器進行編程。
(11)結束子程序。