高速计数器HSC一般和编码器配合使用,在现代自动控制中实现精确定位和测量长度。它可用来累计比可编程序控制器的扫描频率高得多的脉冲输入,利用其产生的中断事件完成预定的操作。 |
一、数量及编号 |
(一)中断源及种类 高速计数器在程序中使用时的地址编号用HCn来表示(在非程序中有时用HSCn),n为编号。 HCn除了表示高速计数器的编号之外,还代表两方面的含义:高速计数器位和高速计数器当前值。编程时,从所用的指令可以看出是位还是当前值。 |
二、高速计数指令 |
(一)高速计数器指令 高速计数器指令有两条:HDEF和HSC。 1、HDEF,定义高速计数器指令 使能输入有效时,为*的高速计数器分配一种工作模式,即用来建立高速计数器与工作模式之间的联系。 图1 HDEF 2、HSC,高速计数器指令 使能输入有效时,根据高速计数器特殊存储器位的状态,并按照HDEF指令*的工作模式,设置高速计数器并控制其工作。 图2 HSC 高速计数器的时钟、方向控制、复位和启动所使用输入如下图所示。 图3 高速计数器的*输入 (二)高速计数器的使用方法 每个高速计数器都有固定的特殊功能存储器与之相配合,完成高速计数功能。具体对应关系如下图所示。 图4 HSC的特殊寄存器 每个高速计数器都有一个状态字节,程序运行时根据运行状况自动使某些位置位,可以通过程序来读相关位的状态,用以作为判断条件实现相应的操作。状态字节中各状态位的功能如下图所示。 图5 状态字节 使用高速计数器时,要按以下步骤进行: 图6 控制位含义 (三)应用实例 要对一高速事件精确控制,通过对脉冲信号进行增计数,计数当前值达到24产生中断,重新从0计数,对中断次数进行累计。计数方向用一个外部信号控制,并能实现外部复位。所用的主机型号为CPU221。 设计步骤: 图7 主程序 图8 初始化程序 图9 中断程序 |