如何使用 C# 在 NI-DAQ 上设置三态
How to set tri-state on NI-DAQ using C#
我有一个 NI-DAQ 6212,我正在尝试使用 C# 将数字输出设置为三态模式。我无法找到关于如何将其与此参考 http://zone.ni.com/reference/en-XX/help/370473H-01/mstudiowebhelp/html/bd33b0d/
分开的示例
我怎样才能做到这一点?非常感谢任何输入!
谢谢!
NIDAQ 库的文档非常少,并且没有很多我必须处理它们时记得的例子。我继承了一些控制电压控制器的代码,我不得不稍微使用它,但我绝不完全理解这个库。
但我很乐意尽我所能,因为我知道这个图书馆有多令人沮丧。
try
{
using (NationalInstruments.DAQmx.Task digitalWriteTask = new NationalInstruments.DAQmx.Task())
{
string[] channels = DaqSystem.Local.GetPhysicalChannels(PhysicalChannelTypes.DOPort, PhysicalChannelAccess.External);
// Here is how I command the voltage of the system.
digitalWriteTask.DOChannels.CreateChannel(channels[1], "port1", ChannelLineGrouping.OneChannelForAllLines);
DigitalSingleChannelWriter writer = new DigitalSingleChannelWriter(digitalWriteTask.Stream);
writer.WriteSingleSampleMultiLine(true, commandValue);
// A clue I might be able to offer about DOChannel Tristate property?
digitalWriteTask.DOChannels.All.Tristate = true;
}
}
catch (Exception ex)
{
Console.Out.WriteLine(ex.Message);
return false;
}
检查 NationalInstruments.DAQmx.Task
后,似乎有一个成员 DOChannels
。您应该能够迭代它或 select All
并设置 Tristate
属性。
至于这样做之前或之后的事情,我不知道。
我有一个 NI-DAQ 6212,我正在尝试使用 C# 将数字输出设置为三态模式。我无法找到关于如何将其与此参考 http://zone.ni.com/reference/en-XX/help/370473H-01/mstudiowebhelp/html/bd33b0d/
分开的示例我怎样才能做到这一点?非常感谢任何输入!
谢谢!
NIDAQ 库的文档非常少,并且没有很多我必须处理它们时记得的例子。我继承了一些控制电压控制器的代码,我不得不稍微使用它,但我绝不完全理解这个库。
但我很乐意尽我所能,因为我知道这个图书馆有多令人沮丧。
try
{
using (NationalInstruments.DAQmx.Task digitalWriteTask = new NationalInstruments.DAQmx.Task())
{
string[] channels = DaqSystem.Local.GetPhysicalChannels(PhysicalChannelTypes.DOPort, PhysicalChannelAccess.External);
// Here is how I command the voltage of the system.
digitalWriteTask.DOChannels.CreateChannel(channels[1], "port1", ChannelLineGrouping.OneChannelForAllLines);
DigitalSingleChannelWriter writer = new DigitalSingleChannelWriter(digitalWriteTask.Stream);
writer.WriteSingleSampleMultiLine(true, commandValue);
// A clue I might be able to offer about DOChannel Tristate property?
digitalWriteTask.DOChannels.All.Tristate = true;
}
}
catch (Exception ex)
{
Console.Out.WriteLine(ex.Message);
return false;
}
检查 NationalInstruments.DAQmx.Task
后,似乎有一个成员 DOChannels
。您应该能够迭代它或 select All
并设置 Tristate
属性。
至于这样做之前或之后的事情,我不知道。