參考一下:
程序通過先設定計數器的值,本例中設定值為10;按設備啟動按鈕I0.1啟動設備,運行后通過信號輸入點I0.0進行計數,當計數當前值等于設定值10時,輸出點斷開,設備運行停止。I0.2為設備停止按鈕。 程序如下:
LD SM0.1
MOVB 16#C8, SMB37
HDEF 0, 0
MOVD +0, SMD38
HSC 0
上述程序注解:(1)對高數記數器HSC0初始化,寫入控制字節(16#C8含義為:要求進行初始值設定;不裝入預設值;運行中不要求更改計數方向;計數器類型為增。) (2)執行HDEF指令,進行高速計數器工作模式的選定設置(計數器為HSC0;模式為0) (3)初始值設定:裝載高數記數器初始值為0 (4)執行HSC指令,寫入HSC0設置。 LDN M14.0
EU MOVB
16#C8, SMB37
MOVD +0, SMD38
HSC 0
上述程序注解:當記速值達到要求值時,M14.0復位,高速計數器計數將復位為初始值,以備下次計數使用。
LDD< HC0, +10
= M14.0
上述程序注解:當計數器值小于10 時,M14.0始終處于置位狀態。
LD I0.1
O Q0.0
AN I0.2
A M14.0
= Q0.0
上述程序注解:I0.1為設備啟動信號;I0.2為設備停止信號。高速計數器累計值達到10 時,設備運行停止。