Function
Sets the transfer mode of the analog input conversion data.
Format
Ret = AioSetAiTransferMode ( Id , AiTransferMode )
Parameters
Id
[ C, C++ : short ] [ Python : ctypes.c_short ]
Specifies the Device ID retrieved from AioInit function.
AiTransferMode
[ C, C++ : short ] [ Python : ctypes.c_short ]
Specifies the transfer mode from the following range.
0 |
Device buffer mode |
1 |
User buffer mode |
For the same device, if you want to use the high-functional analog input and high-functional analog output at the same time, it's necessary to unify the transfer mode.
Return value
Ret [ C, C++ : long ] [ 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 |
10002 |
AIO
driver can't be called |
11960 |
The value of AiTransferMode 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 |
20003 |
Can
not use because another process is using the device |
21960 |
The value of AiTransferMode is outside the designated range of the device being used |
Initial value
In all devices, AiTransferMode = 0
Remarks
There are two types of transfer mode for analog input conversion. The one is Device buffer mode, the other is User buffer mode.
Device buffer mode After the conversion is started, the conversion data are stored in device buffer (memory carried with the device or memory in the driver). Device buffer can be used as FIFO memory or RING memory. (AioSetAiMemoryType) The Application can acquire the conversion data from the device buffer by executing the function as needed. (AioGetAiSamplingData) Device buffer mode can be used easier than User buffer mode, because the conversion data are processed in the number of samplings and the function that directly acquires the conversion data in Voltage is supplied. And, we usually recommend you use Device buffer mode, because we has supplied the functionality for the most use. |
User buffer mode Before the conversion is started, you need ensure and register the application memory that stores the conversion data. (AioSetAiTransferData) After the conversion is started, the conversion data are directly stored to the application memory via the driver. You can select the user buffer whether the user buffer is "Overwrite the memory" or the user buffer is "Not overwrite the memory". (AioSetAiMemoryType)
|
This function cannot be used on devices without
the analog input function.
If the device is in operation, the function cannot be performed.
Specifications based on devices
AI-1204Z-PE |
Usable AiTransferMode is 0 or 1. |
AI-1204Z-PCI |
AI-1204Z-PCI doesn't support by API-AIO(LNX). |
AI-1664UG-PE |
Usable AiTransferMode is 0 or 1. |
AIO-163202F-PE ADA16-32/2(PCI)F |
AiTransferMode = 0 is fixed. |
AIO-160802L-LPE ADA16-8/2(LPCI)L ADAI16-8/2(LPCI)L AIO-160802LI-PE |
AiTransferMode = 0 is fixed. |
AI-1616L-LPE AD16-64(LPCI)LA AD16-16(LPCI)L ADI16-16(LPCI)L AI-1616LI-PE AI-1664LA-LPE |
AiTransferMode = 0 is fixed. |
AD12-16(PCI)EV AD12-16U(PCI)EV AD16-16(PCI)EV AD16-16U(PCI)EV AIO-121601E3-PE AIO-121601UE3-PE AIO-161601E3-PE AIO-161601UE3-PE AI-1216I2-PCI |
AiTransferMode = 0 is fixed. |
AD12-64(PCI) AD12-16(PCI) |
AiTransferMode = 0 is fixed. |
AI-1604CI2-PCI |
AiTransferMode = 0 is fixed. |
AI-1608AY-USB AIO-160802AY-USB AI-1608GY-USB AIO-160802GY-USB |
AiTransferMode = 0 is fixed. |
AIO-163202FX-USB |
AiTransferMode = 0 is fixed. |
AIO-16256256-DEMO |
AiTransferMode = 0 is fixed. |
AI-1664LAX-USB |
AiTransferMode = 0 is fixed. |
AIO-121602LN-USB AIO-120802LN-USB |
AiTransferMode = 0 is fixed. |
AI-1608VIN-USB AI-1608AIN-USB |
AiTransferMode = 0 is fixed. |
Example
Sets Device buffer mode to the transfer mode.
C, C++ |
long Ret; |
Python |
Ret = ctypes.c_long() |