SSPC-Tester/SSPCTester.Devices/Interfaces/ILoad.cs
2026-06-30 12:10:29 +08:00

41 lines
1.2 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

namespace SSPCTester.Devices.Interfaces;
/// <summary>
/// 可编程负载IT8733P / IT8702P的工作模式。
/// </summary>
public enum LoadMode
{
/// <summary>恒流。</summary>
CC,
/// <summary>恒压。</summary>
CV,
/// <summary>恒阻。</summary>
CR,
/// <summary>恒功率。</summary>
CP
}
public readonly record struct PowerReading(double Volts, double Amps, double Watts);
/// <summary>
/// 可编程负载抽象接口。
/// </summary>
public interface ILoad : IDeviceConnection
{
/// <summary>切换工作模式。</summary>
Task SetModeAsync(LoadMode mode, CancellationToken ct = default);
/// <summary>设定目标值含义取决于当前模式A / V / Ω / W。</summary>
Task SetValueAsync(double value, CancellationToken ct = default);
/// <summary>开启 / 关闭负载输入。</summary>
Task InputAsync(bool on, CancellationToken ct = default);
/// <summary>读取实际电压、电流。</summary>
Task<(double volts, double amps)> ReadAsync(CancellationToken ct = default);
Task<PowerReading> ReadPowerAsync(CancellationToken ct = default);
Task<string> QueryIdentityAsync(CancellationToken ct = default);
}