add: 逻辑分析仪可设置采样频率

This commit is contained in:
alivender
2025-08-04 14:31:58 +08:00
parent 04b136117d
commit e86cd5464e
6 changed files with 215 additions and 27 deletions

View File

@@ -3948,9 +3948,10 @@ export class LogicAnalyzerClient {
* @param capture_length (optional) 深度
* @param pre_capture_length (optional) 预采样深度
* @param channel_div (optional) 有效通道(0-[1],1-[2],2-[4],3-[8],4-[16],5-[32])
* @param clock_div (optional) 采样时钟分频系数
* @return 操作结果
*/
setCaptureParams(capture_length: number | undefined, pre_capture_length: number | undefined, channel_div: AnalyzerChannelDiv | undefined, cancelToken?: CancelToken): Promise<boolean> {
setCaptureParams(capture_length: number | undefined, pre_capture_length: number | undefined, channel_div: AnalyzerChannelDiv | undefined, clock_div: AnalyzerClockDiv | undefined, cancelToken?: CancelToken): Promise<boolean> {
let url_ = this.baseUrl + "/api/LogicAnalyzer/SetCaptureParams?";
if (capture_length === null)
throw new Error("The parameter 'capture_length' cannot be null.");
@@ -3964,6 +3965,10 @@ export class LogicAnalyzerClient {
throw new Error("The parameter 'channel_div' cannot be null.");
else if (channel_div !== undefined)
url_ += "channel_div=" + encodeURIComponent("" + channel_div) + "&";
if (clock_div === null)
throw new Error("The parameter 'clock_div' cannot be null.");
else if (clock_div !== undefined)
url_ += "clock_div=" + encodeURIComponent("" + clock_div) + "&";
url_ = url_.replace(/[?&]$/, "");
let options_: AxiosRequestConfig = {
@@ -8233,6 +8238,18 @@ export enum AnalyzerChannelDiv {
XXXII = 5,
}
/** 逻辑分析仪采样时钟分频系数 */
export enum AnalyzerClockDiv {
DIV1 = 0,
DIV2 = 1,
DIV4 = 2,
DIV8 = 3,
DIV16 = 4,
DIV32 = 5,
DIV64 = 6,
DIV128 = 7,
}
/** 捕获配置 */
export class CaptureConfig implements ICaptureConfig {
/** 全局触发模式 */
@@ -8243,6 +8260,8 @@ export class CaptureConfig implements ICaptureConfig {
preCaptureLength!: number;
/** 有效通道 */
channelDiv!: AnalyzerChannelDiv;
/** 时钟分频系数 */
clockDiv!: AnalyzerClockDiv;
/** 信号触发配置列表 */
signalConfigs!: SignalTriggerConfig[];
@@ -8264,6 +8283,7 @@ export class CaptureConfig implements ICaptureConfig {
this.captureLength = _data["captureLength"];
this.preCaptureLength = _data["preCaptureLength"];
this.channelDiv = _data["channelDiv"];
this.clockDiv = _data["clockDiv"];
if (Array.isArray(_data["signalConfigs"])) {
this.signalConfigs = [] as any;
for (let item of _data["signalConfigs"])
@@ -8285,6 +8305,7 @@ export class CaptureConfig implements ICaptureConfig {
data["captureLength"] = this.captureLength;
data["preCaptureLength"] = this.preCaptureLength;
data["channelDiv"] = this.channelDiv;
data["clockDiv"] = this.clockDiv;
if (Array.isArray(this.signalConfigs)) {
data["signalConfigs"] = [];
for (let item of this.signalConfigs)
@@ -8304,6 +8325,8 @@ export interface ICaptureConfig {
preCaptureLength: number;
/** 有效通道 */
channelDiv: AnalyzerChannelDiv;
/** 时钟分频系数 */
clockDiv: AnalyzerClockDiv;
/** 信号触发配置列表 */
signalConfigs: SignalTriggerConfig[];
}