名称:计数器使能

符号:HC_COUNTER

说明:

        用于实现高速计数器的启动、停止功能，高电平有效。
        高速输入端口配置为计数模式后，再使用本指令。
        ENABLE置TRUE后，计数器启动，计数器会从上次计数值继续计数。
        ENABLE置FALSE后，计数器停止，计数值保持不变。
        DIRECTION仅用于单相计数模式，FALSE-加计数，TRUE-减计数。
        DIRECTION变更后，需重新启动计数器才会生效。
        计数值有效时，VALID会被置TRUE。
        计数器出错时，ERROR置TRUE，同时ERRORID输出非0错误码。
        同一计数器，不允许多处调用。

图片:

参数:

参数名称 | 数据类型 | IN/OUT | 参数作用 | 说明 | 默认值
--- | --- | --- | --- | --- | ---
COUNTER | UDINT | IN | 计数器号 | 0-7 |
    无
ENABLE | BOOL | IN | 功能块使能 | TRUE：使能；FALSE：失能 |
    FALSE
DIRECTION | BOOL | IN | 计数方向 | 仅对单相计数有效：FALSE-加计数；TRUE-减计数 |
    FALSE
VALID | BOOL | OUT | 有效标志 | TRUE：结果有效；FALSE：无效 |
    FALSE
COUNTERVALUE | DINT | OUT | 计数值 | 计数器当前计数值 |
    0
ERROR | BOOL | OUT | 出错标志 | TRUE：功能块调用出错 |
    FALSE
ERRORID | DINT | OUT | 错误码 | 0：正常；其它：错误码值 |
    0

错误码:

错误码 | 说明
--- | ---
0 |
    无错误
1 |
    无效的计数器号

示例:

LD:

ST:

HC_COUNTER_inst1(COUNTER := 0, ENABLE := TRUE, DIRECTION := FALSE, VALID => isValid, COUNTERVALUE => counterVal, ERROR => isError, ERRORID => errorID);

解释:

        COUNTER为0，表示本功能块操作计数器0；
        ENABLE为TRUE，表示使能计数器，计数器开始计数；
        DIRECTION为FALSE时，表示在单相计数模式下，计数器加计数；
        isValid为TRUE，表示当前计数值counterVal有效;
        isValid为FALSE，则表示当前计数值counterVal无效；
        isError为TRUE，则表示功能块执行出错;
        errorID为0，表示执行正常，非0，表示存在错误，无法执行。