PTO功能生成指定脉冲数目的方波(占空比为50%)脉冲列。周期的单位可选用μs或ms,周期的范围为50~65 535μs或2~65 535 ms。如果设定的周期为奇数,则不能保证占空比为50%。脉冲计数范围为1~4 294 967 295。
如果周期小于两个时间单位,则周期被默认为两个时间单位。如果指定的脉冲数为0,则脉冲数默认为1。
状态字节(SM66.7或SM76.7)中的PTO空闲位用来指示可编程脉冲列输出结束。可以在脉冲列结束时启动中断程序。如果使用多段操作,将在包络表(Profile Table)完成时调用中断程序(请参看下面的多段流水线)。
PTO功能允许脉冲列排队。当xx的脉冲列输出完成时,立即开始新脉冲列的输出,这样可以保证输出脉冲列的连续性。
有两种流水线(Pipelining)方式:单段流水线和多段流水线。
1)单段流水线
在单段流水线中,需要为下一脉冲列更新SM。启动了初始PTO段后,必须按照第二段波形的要求立即修改SM,并再次执行PLS指令。流水线中每次只能存储一段脉冲列的参数,{dy}段脉冲列发送完成后,接着输出第二段脉冲列;重复上述过程,输入新的脉冲列参数。除了下面的情况外,脉冲列之间可以平稳地过渡:
(1)改变了时间基准。
(2)利用PLS指令捕捉到新的脉冲列设置之前,xx脉冲列已经完成。当流水线已满时,如果试图装入脉冲列参数,状态寄存器中的PTO溢出位(SM66.6或SM76.6)被置1。可编程控制器进入RUN模式时,该位被初始化为0。如果检测到溢出,则必须手工xx该位。
2)多段流水线
在多段流水线中,CPU从V存储器的包络表中自动读取各脉冲列段的特性。该模式下仅使用特殊存储器区的控制字节和状态字节。选择多段操作时必须在SMW168或SMW178中装入包络表的V存储区的偏移地址。周期基准可选用μs或ms,包络表中的所有周期必须使用同一时间基准,在包络表运行过程中不能改变它。多段操作可用PLS指令启动,各段输入的长度为8字节,由16位周期值、16位周期增量值和32位脉冲数值组成。