National-Instruments-DAQ-MX
This commit is contained in:
101
National-Instruments-DAQ-MX/core/Program.cs
Normal file
101
National-Instruments-DAQ-MX/core/Program.cs
Normal file
@ -0,0 +1,101 @@
|
||||
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());
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user