使用 NI-DAQmx
使用 LabVIEW API
- 在程序框图上放置一个 DAQmx 通道属性节点,并将其连接到 DAQmx 创建通道 VI。
- 右键单击属性节点并选择全部转换为写入。
- 属性的实际位置因您的操作类型而异。对于模拟和数字输入和输出操作类型,右键单击属性节点并导航到Properties » Analog Input » General Properties » Advanced » Data Transfer and Memory » Data Transfer Mechanism。对于计数器输入和输出操作类型,您需要转到Properties » Counter Input » General Properties » More » Advanced » Data Transfer and Memory » Data Transfer Mechanism。
- 右键单击 DAQmx Channel Property Node 的 DataXferMech 接线端并选择Create » Constant,然后选择您要使用的传输机制类型。

注意:确保您已连接到兼容设备,否则这些选项可能不可用。您也可以在 NI MAX 中创建虚拟并兼容的设备。
使用 C API
实际的功能将取决于操作类型。例如,如果您想要为模拟输入任务设置数据传输机制,您将调用:
DAQmxSetAIDataXferMech(TaskHandle taskHandle, const char channel[ ], int32 mode);
参数模式可以采用四个不同值之一:
- DAQmx_Val_DMA
- DAQmx_Val_Interrupts
- DAQmx_Val_ProgrammedIO
- DAQmx_Val_USBBulk
有关更多详细信息,请参阅 NI-DAQmx C Reference Help。
使用 .NET API
.NET 调用也将取决于操作类型。如果操作类型是模拟输入,您将调用:
Task.AIChannels.All.DataTransferMechanism = Mode
模式可以采用以下四个值之一:
- AIDataTransferMechanism.Dma
- AIDataTransferMechanism.Interrupts
- AIDataTransferMechanism.ProgrammedIO
- AIDataTransferMechanism.UsbBulk
使用传统 NI-DAQ(Legacy)
使用 LabVIEW API
- 在程序框图上放置一个 Set DAQ Device Information VI。
- 右键单击信息类型终端并选择创建常量。选择要配置的操作的数据传输模式。
- 右键单击信息设置并选择创建常量。选择您要使用的传输机制类型。

使用 C API
要修改传统 NI-DAQ(Legacy)中的数据传输机制,您应该调用:
Set_DAQ_Device_Info( deviceNumber, infoType, infoValue )
infoType 参数将取决于操作类型。例如,如果您想修改模拟输入操作的数据传输机制,您应该调用:
Set_DAQ_Device_Info( deviceNumber, ND_DATA_XFER_MODE_AI, infoValue )
如果您使用的是典型的 E 系列 PCI 设备,则 infoValue 参数可以采用两个不同值之一:
- ND_INTERRUPTS
- ND_UP_TO_1_DMA_CHANNEL
关于使用 Traditional NI-DAQ (Legacy) C API 设置数据传输机制的更多详细信息,请参考位于 Start » All Programs » National Instruments » NI-DAQ 的 Traditional NI-DAQ (Legacy) C Function Reference Help » Traditional NI-DAQ Function Reference Help.