NI-DAQ 6212 を使用しており、C# を使用してデジタル出力をトライステート モードに設定しようとしています。このリファレンスhttp://zone.ni.com/reference/en-XX/help/370473H-01/mstudiowebhelp/html/bd33b0d/以外に設定する方法の例を見つけることができません
どうすればこれを達成できますか? どんな入力でも大歓迎です!
ありがとうございました!
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
。それを反復処理するか、プロパティを選択All
して設定できるはずです。Tristate
それを行う前後については、私にはわかりません。