<< 向前        下一页 >>

ID : 365

Set

功能

I/O型变量的Bit设为ON

格式

Set I/O型变量名[, 输出时间[,Mode = 非同步模式]]

指定项目

I/O型变量名
指定I/O型变量名。
输出时间
通过整数型数据指定输出(ON)时间[ms]。可省略。省略时不关闭设为ON的I/O。
非同步模式
使用整数型数据指定模式。如果指定Mode选项,系统替代PAC执行OFF输出处理。Ver.1.8.*及更高版本可使用该项目。
如果指定非同步模式,使用全局变量的I/O型变量。如使用局部变量,则会出现语法错误。
例:
    由于是Set IO[24], 100, Mode = 2 'IO型的全局变量,因此可以与Mode指定一起使用
    DefIO aaa = Bit, 24
由于是Set aaa, 100, Mode = 2 'IO型的局部变量,因此不可以与Mode指定一起使用(语法错误)

解说

将通过I/O型变量名指定的I/O型变量的全部Bit设为ON。如果I/O型局部变量定义(DefIO)时设有掩码,则只有未设定掩码的Bit变为ON。

连续Index编号的I/O可设为ON一次。

Set IO[128 To 160] '将I/O端口128~160全部设为ON
DefIO aaa(3) = Byte, 128
Set aaa(0 To 3) 'I/O型局部变量aaa全部为255

连续变量的指定“To”的表示仅可用SetReset记述。

指定输出时间

指定输出时间时,经过指定时间后关闭指定的I/O。

以下为相同记述。

Set IO[10], 1000
Set IO[10]
Delay 1000
Reset IO[10]

Mode选项(Ver.1.8.*及更高版本有效)

如果指定Mode选项,PAC在将I/O设为ON之后马上执行下一步。PAC是指系统非同步地监视经过的时间,如果经过时间达到输出时间,关闭I/O。

如果不指定Mode选项,在到达输出时间前,不执行下一步。

根据暂时停止时的OFF处理的差异,有以下2个模式。

模式 内容
1 暂时停止中不关闭的模式

即使在暂时停止中经过时间也会计时,但在暂时停止中即使达到输出时间后也不会关闭。再次使任务动作时,关闭。
只在任务结束时想自动复位(OFF)I/O的话,指定该模式。

Sub 
 SET IO128, 1000, Mode = 1
 Wait IO128 = 0
End Sub

2 刚刚暂停检测后关闭的模式 在任务刚刚暂停后,执行强制自动复位(OFF)。
在保护停止时任务暂停的情况下,想使非同步I/O复位时,指定该模式。
Sub 
 SET IO128, 1000, Mode = 2
 Wait IO128 = 0
End Sub
  • 在输出时间经过前任务停止时,用该任务强制自动复位(OFF)ON输出中的I/O。
  • 被强制自动复位的I/O即使从任务暂停再次执行,也不会自动变为ON。
  • 使用Mode选项时,如果为输出时间设为-1,进入无限等待状态。如果与Mode=1并用,可作为任务停止时的自动复位执行。
  • 在伴随Mode选项的多个SET指令中指定了相同的I/O时,在后面的指令中的设定变为有效。
  • 可对非同步处理中的I/O用Reset指令关闭,用不伴随Mode选项的Set指令接通。然而,其间系统也会计时经过时间,在经过时间达到输出时间时关闭。

相关项目

Reset

注意事项

  • 指定输出时间时由于任务的负载等可能产生误差。另外,如果指定的时间过短也会产生误差。
  • 即使任务暂时停止中或步骤停止中也消耗输出时间。

应用示例

'!TITLE“切换I/O端口”
'I/O端口编号“240”置于0N时,将I/O端口编号“241”、“220”至“225”设定为OFF
Sub Sample_Set

  '将I/O端口编号“240”设定为ON
  Set IO[240]

  '将I/O端口编号“241”设定为ON
  Set IO[241]

  '将I/O端口编号“220”至“225”设定为ON
  Set IO[220 To 225]

  'I/O端口编号“240”置于ON时
  If IO[240] Then

    '将I/O端口编号“241”设定为OFF
    Reset IO[241]

    '将I/O端口编号“220”至“225”设定为OFF
    Reset IO[220 To 225]

  End If

End Sub

ID : 365

<< 向前        下一页 >>