差错检测(SRQ)

E5071C

差错检测(SRQ)

有关样本程序的其他方面

概述

这个样本程序说明如何使用SRQ检测是否发生差错。

这个程序设置SRQ,然后故意发送无效参数产生差错,并让该程序进行处理。在差错处理部分,这个程序检查差错,显示差错数量与差错消息,然后显示指示程序终止的消息。参见该程序的检测是否发生差错。 参见该程序的检测查错的发生

  • 由差错导致的顺序拦截不能在Excel VBA上执行。

在HT Basic中的样本程序(srq_err.bas)

10 DIM Buff$[9],Err_mes$[50]

20 INTEGER Err_no

30 !

40 ASSIGN @Agte507x TO 717

50 !

60 OUTPUT @Agte507x;"*ESE 60"

70 OUTPUT @Agte507x;"*SRE 32"

80 OUTPUT @Agte507x;"*CLS"

90 OUTPUT @Agte507x;"*OPC?"

100 ENTER @Agte507x;Buff$

110 !

120 ON INTR 7 GOTO Err_proc

130 ENABLE INTR 7;2

140 OUTPUT @Agte507x;":CALC1:PAR:COUN 2"

150 PRINT "Trace 1 Meas.Para: S21"

160 PRINT "Trace 1 Format : Log Mag"

170 OUTPUT @Agte507x;":CALC1:PAR1:DEF S21"

180 OUTPUT @Agte507x;":CALC1:PAR1:SEL"

190 OUTPUT @Agte507x;":CALC1:FORM MLOG"

200 PRINT "Trace 2 Meas.Para: S11"

210 PRINT "Trace 2 Format : Log Mag"

220 OUTPUT @Agte507x;":CALC1:PAR2:DEF S11"

230 OUTPUT @Agte507x;":CALC1:PAR2:SEL"

240 OUTPUT @Agte507x;":CALC1:FORM LOG"

250 OUTPUT @Agte507x;"*OPC?"

260 ENTER @Agte507x;Buff$

270 GOTO Skip_err_proc

280 Err_proc: OFF INTR 7

290 OUTPUT @Agte507x;";:SYST:ERR?"

300 ENTER @Agte507x;Err_no,Err_mes$

310 PRINT "Error occurred!!"

320 PRINT " No:";Err_no,"Description: "&Err_mes$

330 PRINT "PROGRAM INTERRUPT!!"

340 GOTO Prog_end

350 Skip_err_proc: PRINT "PROGRAM DONE."

360 Prog_end: END

说明

40行

为I/O通道分配GPIB地址。

60行到70行

这些行启动标准事件状态寄存器中的位2、3、4、5,并设置服务请求启动寄存器中的位5到位1。

80行到100行

这些行清除状态位寄存器、标准事件状态寄存器和差错序列。

120行到130行

这些行为SRQ中断设置分支目标,以启动SRQ中断。

140行到60行

这些行设置测量参数、迹线1与迹线2的数据格式。迹线2的数据格式设置无效参数就会产生差错。

280行到330行

这些行按以下方式定义差错处理器。

290行到300行: 这些行从差错序列获取差错的差错数量、差错消息。

310行到330行 这些行显示指示差错、差错数量、差错消息的消息,还显示说明程序中断的消息。

350行

显示关闭消息。注意,除非该程序在为迹线2的数据格式设置相关参数之后再次运行,否则不会显示该消息。