102 lines
4.6 KiB
C#
102 lines
4.6 KiB
C#
using NationalInstruments.DAQmx;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
|
|
namespace National_Instruments_DAQ_MX;
|
|
|
|
public class Program {
|
|
|
|
public static void Secondary(List<string> args) {
|
|
try {
|
|
List<string> results = [];
|
|
Task task;
|
|
double value;
|
|
AIChannel aiChannel;
|
|
AnalogSingleChannelReader analogSingleChannelReader;
|
|
if (args.Contains("ai0")) {
|
|
task = new();
|
|
aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai0", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
|
|
analogSingleChannelReader = new(task.Stream);
|
|
value = analogSingleChannelReader.ReadSingleSample();
|
|
results.Add($"ai0: {value}");
|
|
aiChannel.Dispose();
|
|
task.Dispose();
|
|
}
|
|
if (args.Contains("ai1")) {
|
|
task = new();
|
|
aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai1", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
|
|
analogSingleChannelReader = new(task.Stream);
|
|
value = analogSingleChannelReader.ReadSingleSample();
|
|
results.Add($"ai1: {value}");
|
|
aiChannel.Dispose();
|
|
task.Dispose();
|
|
}
|
|
if (args.Contains("ai2")) {
|
|
task = new();
|
|
aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai2", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
|
|
analogSingleChannelReader = new(task.Stream);
|
|
value = analogSingleChannelReader.ReadSingleSample();
|
|
results.Add($"ai2: {value}");
|
|
aiChannel.Dispose();
|
|
task.Dispose();
|
|
}
|
|
if (args.Contains("ai3")) {
|
|
task = new();
|
|
aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai3", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
|
|
analogSingleChannelReader = new(task.Stream);
|
|
value = analogSingleChannelReader.ReadSingleSample();
|
|
results.Add($"ai3: {value}");
|
|
aiChannel.Dispose();
|
|
task.Dispose();
|
|
}
|
|
if (args.Contains("ai4")) {
|
|
task = new();
|
|
aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai4", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
|
|
analogSingleChannelReader = new(task.Stream);
|
|
value = analogSingleChannelReader.ReadSingleSample();
|
|
results.Add($"ai4: {value}");
|
|
aiChannel.Dispose();
|
|
task.Dispose();
|
|
}
|
|
if (args.Contains("ai5")) {
|
|
task = new();
|
|
aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai5", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
|
|
analogSingleChannelReader = new(task.Stream);
|
|
value = analogSingleChannelReader.ReadSingleSample();
|
|
results.Add($"ai5: {value}");
|
|
aiChannel.Dispose();
|
|
task.Dispose();
|
|
}
|
|
if (args.Contains("ai6")) {
|
|
task = new();
|
|
aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai6", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
|
|
analogSingleChannelReader = new(task.Stream);
|
|
value = analogSingleChannelReader.ReadSingleSample();
|
|
results.Add($"ai6: {value}");
|
|
aiChannel.Dispose();
|
|
task.Dispose();
|
|
}
|
|
if (args.Contains("ai7")) {
|
|
task = new();
|
|
aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai7", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
|
|
analogSingleChannelReader = new(task.Stream);
|
|
value = analogSingleChannelReader.ReadSingleSample();
|
|
results.Add($"ai7: {value}");
|
|
aiChannel.Dispose();
|
|
task.Dispose();
|
|
}
|
|
Console.WriteLine(string.Join(Environment.NewLine, results));
|
|
} catch (Exception ex) {
|
|
Console.WriteLine(string.Concat(ex.Message, Environment.NewLine, ex.StackTrace));
|
|
throw;
|
|
}
|
|
}
|
|
|
|
public static void Main(string[] args) {
|
|
if (args is not null) {
|
|
Secondary(args.ToList());
|
|
}
|
|
}
|
|
}
|