アナログ入力 サンプルコード
// 使用する名前空間の宣言
using Y2.UsbIO.UsbPc104.Aio; // USB-PC104シリーズのAIOから始まる型番のデバイスを使用する場合
// デバイスのインスタンスを生成(AIO-84/16/32A-Uを使用する場合)
var device = new Aio841632aU();
// デバイスに接続
device.Connect(); // 識別スイッチ位置を0で使用する場合
//device.Connect(DeviceSwitch.PositionA); // 識別スイッチ位置をAで使用する場合
// 全てのアナログ入力端子の状態を読み込み
Span<Voltage> voltages = stackalloc Voltage[device.Ain.ChannelCount];
//Span<Voltage> voltages = new Voltage[device.Ain.ChannelCount]; でも可
device.Ain.Input(voltages);
// AIN0の値をミリボルト値で取得する場合
Console.WriteLine($"AIN0は{voltages[0].Millivolts}mVです。");
// AIN1の値をボルト値で取得する場合
Console.WriteLine($"AIN1は{voltages[1].Volts}Vです。");
/// デバイスのインスタンスを破棄(usingを使用しても可)
device.Dispose();
Spanの代わりに配列を使う場合
// デバイスのインスタンスを生成(AIO-84/16/32A-Uを使用する場合)
var device = new Aio841632aU();
// デバイスに接続
device.Connect(); // 識別スイッチ位置を0で使用する場合
//device.Connect(DeviceSwitch.PositionA); // 識別スイッチ位置をAで使用する場合
// 全てのアナログ入力端子の状態を読み込み
var voltages = new Voltage[device.Ain.ChannelCount];
device.Ain.Input(voltages);
// AIN0の値をミリボルト値で取得する場合
Console.WriteLine($"AIN0は{voltages[0].Millivolts}mVです。");
// AIN1の値をボルト値で取得する場合
Console.WriteLine($"AIN1は{voltages[1].Volts}Vです。");
// デバイスのインスタンスを破棄(usingを使用しても可)
device.Dispose();