AioSetAiStartOutRange


Function

Sets Out Range when the conversion start condition is Out Range comparison.
This settings is necessary when the conversion start condition that is set by AioSetAiStartTrigger function is Out Range comparison.
This function doesn't need to be executed when the conversion start condition is not Out Range comparison.

Only one level comparison setting can be set for one device. If specified multiple times, only the last data is valid.

Format

Ret = AioSetAiStartOutRange ( Id , AiChannel , Level1 , Level2 , StateTimes )

Parameters

Id [ VB.NET : Short ] [ C, C++ : short ] [ C# : short ] [ Python : ctypes.c_short ]
Specifies the ID retrieved from AioInit function.

AiChannel [ VB.NET : Short ] [ C, C++ : short ] [ C# : short ] [ Python : ctypes.c_short ]
Specifies the channel that performs the Out Range comparison.

Level1 [ VB.NET : Integer ] [ C, C++ : long ] [ C# : int ] [ Python : ctypes.c_long ]
Sets the upper limit of Out Range comparison in Binary value.
The available value differs by the device.

Resolution of device is 12 bit

0 to 4095

Resolution of device is 16 bit

0 to 65535

Level2 [ VB.NET : Integer ] [ C, C++ : long ] [ C# : int ] [ Python : ctypes.c_long ]
Sets the lower limit of Out Range comparison in Binary value.
The available value differs by the device.

Resolution of device is 12 bit

0 to 4095

Resolution of device is 16 bit

0 to 65535

StateTimes [ VB.NET : Integer ] [ C, C++ : long ] [ C# : int ] [ Python : ctypes.c_long ]
Sets the number of samplings (1-256) within the state-held period after the condition of Out Range comparison is satisfied.
In fact, the conversion is started after sampling time of StateTimes elapses.

Return value

Ret [ VB.NET : Integer ] [ C, C++ : long ] [ C# : int ] [ Python : ctypes.c_long ]

Return values

Content

0

Normality completion

7

Execute AioResetDevice function because the device has recovered from standby mode

10001

Invalid Id was specified
Use the Id retrieved from AioInit to specify the Id in this function.

10002

AIO driver can't be called
At first, perform AioInit function.

12060

The value of AiChannel is outside the designated range of the function
Specify the channel setting in range: 0 <= AiChannel <= Max channel.

12061

The value of StateTimes is outside the designated range of the function

20001

This function can't be used by this device

20002

Can not use while by another device works
To use this function, analog input operation must be stopped.

20003

Can not use because another process is using the device
When another process is using the device, all functions except for those that support multi-process can not be performed.

22060

The value of AiChannel is outside the designated range of the device being used

22061

Data to establish in the 12 bits device are within the range of 0 to 4095

22062

Data to establish in the 16 bits device are within the range of 0 to 65535

22064

The value of StateTimes is outside the designated range of the device being used

Initial value

In all devices, AiChannel = 0, StateTimes = 1, Level1 = 0, Level2 = 0

Remarks

This function cannot be used on devices without the analog input function.
If the device is in operation, the function cannot be performed.

Example

Sets Out Range comparison start to channel 0.
Comparison data is 800H to 900H, the state-held times is 1.

VB.NET

Dim Ret As Integer
Ret = AioSetAiStartOutRange ( Id , 0 , &H900 , &H800 , 1 )
 

C, C++

long Ret;
Ret = AioSetAiStartOutRange ( Id , 0 , 0x900 , 0x800 , 1 );
 

C#

int Ret;
Ret = aio.SetAiStartOutRange ( Id , 0 , 0x900 , 0x800 , 1 );
 

Python

Ret = ctypes.c_long()
Ret.value = caio.AioSetAiStartOutRange ( Id , 0 , 0x900 , 0x800 , 1 )