资源描述
一、自动测试系统的消息交换一、自动测试系统的消息交换nGPIB器件数据标准推荐消息交换控制协议n“协议”给出器件处理程控消息和响应消息的严格行为准则,协调控制器与器件之间的通信行为,约束器件间的消息通信。控制器器件命令数据第一节 消息交换控制协议第一节 消息交换控制协议IEEE488.2GPIB标准IEEE488.1数据语法结构、编码标准公用命令消息交换控制协议消息交换控制协议概述第一节 消息交换控制协议消息交换控制协议消息交换控制功能概念模型消息交换控制状态图消息交换控制构成机制消息交换操作流程消息交换控制协议构成第一节 消息交换控制协议IEEE488.1总线IO控制(IOC)状态报告(SR)器件功能(DF)消息交换接口(MEI)IEEE488.1远地消息IEEE488.1器件消息和get器件特定数据器件状态IEEE488.1 STBIEEE488.1 istIEEE488.2 reqt reqf消息状态消息二、消息交换控制功能构成模型二、消息交换控制功能构成模型第一节 消息交换控制协议1、GPIB总线电缆和信号线驱动器机械、电器相容2、IOC(IO控制)接口功能功能和运行相容AHLSHTDCDT处理状态报告、消息交换DABDABDCLSDCGETGPIB接口标准GPIB器件数据标准接口功能状态报告MEI第一节 消息交换控制协议(1)接收数据拜特IOC 置 bav=1特殊处理ib_full=1IOC 置 bav=0 =IBLACSACDSYNbav:拜特可用消息IB:输入缓冲区LACS:听者作用态ACDS:接收数据态第一节 消息交换控制协议(2)发送数据拜特IOC 置 brq=1特殊处理oq_empty=1IOC 置 brq=0=BUSSGNSTACSYN已传响应结束符?RMT_sent=1后续处理NYbrq:拜特请求消息SGNS:源方产生态TACS:讲者作用态RMT_sent:响应消息结束符已发送第一节 消息交换控制协议(3)响应器件清除接口消息dcas=1 抑制 DACDCAS接收 DCL 或 SDC初始化器件功能初始化 MEIdcas=0释放 DACDCAS:器件清除作用态第一节 消息交换控制协议n(4)响应群触发GETMEI触发控制框器件功能IOCGET,*TRG软逻辑硬件同步启动单个器件同步启动多个器件1.执行特定操作2.由*DDT定义的器件动作第一节 消息交换控制协议get=1 抑制 DACDTASGET v*TRG启动get=0释放 DACDTAS:器件触发作用态第一节 消息交换控制协议3、器件功能 1.接受来自MEI的合法的、可执行的器件消息单元,产生相应的远控操作。2.接受来自MEI的有效询问请求,并返回响应数据去MEI。3.向状态报告框反映有关器件功能状态消息。DFMEI命令合法命令正确执行错误命令、不可执行命令无法执行的命令第一节 消息交换控制协议4、状态报告n响应串行查询和并行查询;n接收来自MEI的错误状态和DF的状态消息;n产生STB、ist、reqf、reqt到IOC。5、消息交换控制接口n处理发到器件和从器件来的所有IEEE488.1的器件相关消息。第一节 消息交换控制协议IEEE 488.1 BusIOC消息交换控制器件功能(DF)输入缓冲器(IB)语法分析程序(Parser)执行控制(EC)响应格式化程序(RF)输出序列(OQ)触发控制ponib_emptyib_fullcleareom,queryp_blockedresetec_blockedreset可执行消息元素ec_idle执行错误p_idel命令错误GETDABENDGETgetp_idel,ec_idel,ib_emptyoq_emptyoq_fullclearrf_blockedreset询问错误响应数据响应消息元素MAVSTB,reqt,reqf,ist触发bavbrqdcasgetRMT_sentIEEE488.1远地消息DABENDGET已分析消息元素消消息息交交换换控控制制接接口口第一节 消息交换控制协议(1)输入缓冲器(Input Buffer)仪器内部存储器的一部分,采用FIFO数据结构n三种操作1.装入数据2.取出数据3.清空n两个消息1.ib_empty2.ib_fulln有关规则1.深度:大于等于零2.溢出:不允许溢出3.清零:当且仅当 pon 或 dcas 消息为真第一节 消息交换控制协议(2)语法分析器(Parser)1)作用:n从IB中取出DAB、END、GET消息并将其分离为各种句法元素;n将句法元素转变为内部表语,发给EC;n产生eom、query消息;n检查Command Error,向状态报告单元指示出有错误的句法和题头。第一节 消息交换控制协议2)规则n检出命令错(Command Error)n在一个程控消息中发现一个语法错误;n发现一个不认识的题头;n发现一个对应题头属错误类型的参数;n在一程控消息的第一个字节与程控消息结束符之间,遇到一个GET消息。n错误处理n对已通过语法分析的元素,器件可选择“丢弃”或“执行”n发出Command Error消息到状态报告n丢弃后续的DAB和GET,直到下列条件为真,然后复位:dcas=1;pon=1;eom=1;brq=q&ib_empty=1 第一节 消息交换控制协议n语法分析器复位n使Parser回到仪器程控命令的根级,等待处理将接收到的程控消息的第一个字节n复位条件dcas=1;pon=1;eom=1;brq=q&ib_empty=1第一节 消息交换控制协议3)语法分析消息1)已分析的消息元素2)被检消息的结束符eom3)被检消息的询问query4)语法分析器空闲p_idle5)语法分析器阻塞p_blocked第一节 消息交换控制协议n已分析的消息元素n代表程控消息的全部或部分的器件内部表语n被检消息的结束符eomn当以下任一条件产生时,Parser设置eom=TRUEn从Ib中收到;n分析到一个;n出现在程控消息第一字节和之间的情况除外。n触发控制单元已将(trigger)消息传送到DF时。n下列任一条件产生时,Parser设置eom=FALSEnParser被复位;n从Ib收到任何其它的或消息时。第一节 消息交换控制协议n被检消息的询问queryn以下任一条件产生时,Parser设置query=TRUE:n有效的;n有效的:n宏标记,其中包括了;n或“*TRG”命令,该命令使器件执行*DDT,并且由器件设计者规定器件的触发作用会产生一个n当Parser复位或从Ib收到任何其它或消息时,Parser设置query=FALSE第一节 消息交换控制协议n语法分析器空闲p_idlenp_idle=TRUE nParser已分析了前面所有的消息,而且并未实际处理一个有效的或一个有效的时。np_idle=FALSEn其它任何情况n语法分析器阻塞p_blockednp_blocked=TRUEnParser等待EC完成前面已分析的消息元素的处理时。np_blocked=FALSEn其它任何情况第一节 消息交换控制协议(3 3)执行控制()执行控制(Execution ControlExecution Control)1)功能n接收来自Parser的内部表示码,处理耦合参数、询问和器件同步命令,生成可执行的消息元素(EME)n耦合参数:n询问:n当聚集了足以启动器件操作的消息后,将EME传给器件功能n根据所执行的命令的不同,以不同的方式处理下一条消息n顺序命令:n重叠命令:第一节 消息交换控制协议2)错误处理nEC应检测出执行错误,并向状态报告框报告n执行错误:n程控数据超界或与其能力不一致;n一个有效的程控消息由于某些器件的状态而不能被适当地执行。3)EC复位n以前的状态不再影响新的程控消息npon=1 或 dcas=1 EC复位第一节 消息交换控制协议4)执行控制消息n执行控制消息元素n执行控制空闲消息ec_idleA.所有被延迟的命令都已执行完毕,并且B.执行控制已准备好接收一个来自语法分析器的新命令或询问,并且a.执行控制被复位,或b.以前所有的命令都已被执行完毕n执行控制阻塞消息ec_blockedn当EC已准备好将一个有效询问请求发给DF时,如需等待RF和DF处理前一个有效询问请求时,EC置ec_blocked=TRUE。第一节 消息交换控制协议器件功能器件功能n包含所有特定器件的特点和功能,从执行控制接收可执行的消息元素,并执行相应的操作。n规则:n从执行控制接收有效询问请求,向响应格式化器发出所要求的任何响应数据;n向状态报告单元报告器件信息。n器件功能消息n开机消息pon:nMEI复位,进入IDLE态;n进入“命令操作完成空闲态”;“询问操作完成空闲态”;n当MEI进入IDLE态后,pon撤销。第一节 消息交换控制协议(4 4)响应格式化程序)响应格式化程序n任务:将来自器件功能的数据元素的内部表示按语法规则转变成一串数据串。n规则:n分隔响应消息单元;n用响应消息结束符结束最后一个响应消息单元;n复位:n新的响应消息单元不再受复位前条件的影响ndcas=1;或 pon=1;复位。n响应格式消息n响应消息元素n响应格式器阻塞rf_blockedn当RF有一个响应消息单元要放入Oq,而oq_full=TRUE时,rf_blocked=TRUE第一节 消息交换控制协议(5 5)输出队列)输出队列存放响应消息存放响应消息n应有足够的长度以防止死锁n可以延迟对冗长响应数据的格式化到输出时进行,以降低对Oq长度的要求。n当dcas=1;或 pon=1时清空n输出队列消息n“消息可用”消息(MAV)n“输出队列满”消息(oq_full)第一节 消息交换控制协议n可选的功能框n允许器件用硬件高速响应GET消息而不会违反命令的执行顺序规则。n出发控制规则:GETib_empty p_idle ec_idle get将GET直接送往DFIBParserEC器件功能DFYNYN高速硬件同步(6 6)触发控制)触发控制第一节 消息交换控制协议(7)消息交换控制)消息交换控制三、消息交换控制操作三、消息交换控制操作1、消息交换的基本原则2、正常操作流程3、出错和违约第一节 消息交换控制协议1、消息交换的基本原则n完整性n对应性n顺序性第一节 消息交换控制协议完整性完整性n保证程控消息(询问消息)、响应消息的完整性n控制器启动消息交换,在传送完整的询问消息之后,才应从器件读取相应的响应消息;n器件在分析完完整的询问消息后,才应产生响应消息元素;n控制器接收到完整的响应消息之后,才能发出新的程控消息。-nController发完整的询问消息nDevice接受分析完整地询问消息nController接受完整的响应消息第一节 消息交换控制协议对应性对应性n器件对于收到的每个完整的询问消息,应产生唯一对应的完整的响应消息。n一个询问消息单元可以对应多个响应消息单元,但这些响应消息单元式固定唯一的;n(个数、顺序、种类)n复合询问所对应的应是唯一对应的复合响应消息;n复合响应消息的顺序应对应复合询问消息的顺序。n复合响应消息若超出Oq的存储能力,则MEI有关功能框进入阻塞态n响应消息的产生:n立即产生n推迟产生:当Controller读取时才产生。第一节 消息交换控制协议顺序性顺序性n器件必须按接收程控消息元素的次序来分析、解释执行所含的命令:n可以单个执行先收到的可语法分析的消息元素,也可以到收到分界符、结束符时执行整个程控消息;n先收到的先执行,在先期收到的程控消息单元执行完毕前,不应执行任何程控消息n在执行连续的程控消息单元之前,应执行已知的全部程控消息n顺序命令n重叠命令n对GET消息,器件应按执行程控消息元素相同的次序执行GET消息。如果在执行程控消息之前收到GET,则推迟执行GET。第一节 消息交换控制协议2、消息交换控制正常操作流程第一节 消息交换控制协议第一节 消息交换控制协议IDELREADQUERYDONERESPONSESENDbav|get|!ib_emptyqueryeom&!bav&!get&ib_empty!eom&brqeom&(!bav&!get&ib_empty)RMT_sentbav|geteomdcaspon正常的操作流程正常的操作流程第一节 消息交换控制协议助记符名称说明IDLE空闲态产生初始化动作,等待接收消息READ读态收到程控命令读、语法分析、执行消息QUERY询问态收到有效询问继续READ态动作并格式化,存储响应消息以备发送SEND发送态控制器读响应数据,但程控命令未分析完分析执行询问消息并格式化,发送响应消息RESPONSE响应态分析完完整的程控命令格式化、发送响应消息DONE完成态已发送等待下一个消息正常的操作流程状态表正常的操作流程状态表第一节 消息交换控制协议IDEL-IDEL-空闲态空闲态n操作:n器件等待控者消息,接收的下一个数据将被解释为新的程控消息的开始;Oq为空。nINITIALIZE操作(dcas|pon=TRUE):n清除Ib、Oq;n复位Parser、EC、RF。n状态变迁:n=READnbav|get|!ib_empty=TRUE(有命令到达)第一节 消息交换控制协议READ-READ-读态读态n操作:nIOC从总线读取消息,放入Ib,Parser、EC动作,Oq为空。n状态变迁:n=QUERYnquery=TRUE(分析出一个有效询问,需产生响应消息)n=IDELneom=TRUE(命令结束)第一节 消息交换控制协议QUERY-QUERY-询问态询问态n操作:nIOC从总线读取消息,放入Ib,Parser、EC动作,n状态变迁:n=SENDnbrq&!eom=TRUE(控者开始读响应数据,但还未分析完整个命令)n=RESPONSEneom&(!brq&!get&ib_empty)=TRUE(命令分析完,且没有新命令到达)第一节 消息交换控制协议SEND-SEND-发送态发送态n操作nParser、EC继续工作,RF产生并装入到Oq,IOC从Oq取出数据发送到控制器。n状态变迁n=RESPONSEneom&(!bav&!get&ib_empty)=TRUE(命令分析完,且没有新命令到达)第一节 消息交换控制协议RESPONSE-RESPONSE-响应态响应态n操作nRF格式化数据到Oq,IOC发送数据到控制器。n状态变迁n=DONEnRMT_sent=TRUE(IOC已发送响应消息结束符)第一节 消息交换控制协议DONE-DONE-完成态完成态n操作nParser、EC、RF处于非激活态,Ib、Oq为空。n状态变迁n=READnbav|get=TRUE(收到新命令)第一节 消息交换控制协议IDELREADQUERYDONERESPONSESENDeom&(bav|get|!ib_empty)!eom&!bav&!get&ib_emptyeomDEADLOCKoq_full&rf_blocked&ec_blocked&p_blocked&ib_full&(bav|get)brq&!bav&!get&ib_emptybrq&!bav&!get&ib_emptybav|get|(eom&!ib_empty)bav|get12223331:DeadLock2:Unterminated3:Interrupted出错和违约出错和违约第一节 消息交换控制协议n原因(在QUERY态出现下面条件)oq_full&rf_blocked&ec_blocked&p_blocked&ib_full&(bav|get)=TRUEn操作:n向报告“询问错”;nParser和EC继续工作;n丢弃响应消息;n可以通过清空Oq和复位RF而脱离DEADLOCK态。n状态变迁n=IDEL neom=TRUEndcas|pon=TRUE(执行INITIALIZE操作)MEI内部出现阻塞控制器不读响应消息,继续发程控命令置brq=FALSE;控制器读器件时不发送任何响应消息DEADLOCK-DEADLOCK-死锁死锁第一节 消息交换控制协议UNTERMINATEDUNTERMINATEDn原因:nIDEL 或 READ:nbrq&(!bav&!get&ib_empty)=TRUEnSEND:n!eom&!bav&!get&ib_empty=TRUEn操作:n在“标准事件状态寄存器”中设置“询问错误”位;n清除Oq;n选择地执行来自不完整消息中的任意元素。(同一消息中的前面所有消息应被执行);n丢弃任意部分分析过的,以便Parser能准备好去分析一个新的;n置brq=FALSE;nMEC进入IDLE态。器件被设为讲者,但无话可讲询问消息不完整第一节 消息交换控制协议INTERRUPTEDINTERRUPTEDn原因:nQUERYneom&(bav|get|!ib_empty)=TRUEnSENDnbav|get|(eom&!ib_empty)=TRUEnRESPONSEnbar|get=TRUEn操作:n在“标准事件状态寄存器”中设置“询问错误”位;n清除Oq;n复位EC和RF,以便当器件收到一个新的询问消息单元时能发出正确的响应消息;n置brq=FALSEnMEC进入READ态;控制器没有读完完整的响应消息,又开始发新的程控命令第一节 消息交换控制协议总总 结结n状态(7)n(IDLE)(READ)n(QUERY)(SEND)(RESPONSE)(DONE)n(DEADLOCK)n动作(3)nINTIALIZEnUNTERMINATEDnINTERRUPTEDn错误类型(3)n命令错误(Parser)n执行错误(EC)n询问错误(MEC)n(DEADLOCK)(UNTERMINATED)(INTERRUPTED)处理程控命令处理程控询问处理死锁错误第一节 消息交换控制协议MEC的设计实现举例一、仪器的程控消息一、仪器的程控消息器件的听格式n功能级定义(高级)n规定句法元素的功能含义;供器件指令集的设计者使用。n编码级定义(低级)n规定实际的编码格式;供语法分析器的设计者使用。n编码句法:n由句法图产生n不满足句法图要求的消息序列将不能被解释为功能元素,并会产生一个“命令错”第二节 程控消息句法ABC合法组合:ACCBCCCCCCCC图示句法流程图示句法流程第二节 程控消息句法二、程控消息编码句法二、程控消息编码句法n端点句法元素n基本的、不可分的句法结构。n表示一个基本功能或者一个由编码语法表述的特定编码n用椭圆表示n非端点句法元素n中间句法元素;总可以再展开为一个端点元素图。n用方框表示。程控题头分隔符程控命令单元记号说明记号说明第二节 程控消息句法特殊符号特殊符号n大小写等效nEND消息n表示该END消息与前面的数据字节是同时传送的。Q|qENDENDNL在发送NL(0 x0a)的同时,!ATN&EOI=TURE第二节 程控消息句法完整程控消息完整程控消息-功能句法功能句法n功能:n完整的控者-器件消息。n可以为空序列。n句法:程控消息结束符程控消息PMT功能句法元素第二节 程控消息句法程控消息单元分隔符程控消息单元命令消息单元询问消息单元 功能句法 功能句法句法分解句法分解第二节 程控消息句法命令程控题头程控题头分隔符程控数据分隔符程控数据 功能元素询问程控题头程控题头分隔符程控数据分隔符程控数据 功能元素第二节 程控消息句法字符程控数据非十进制数值程控数据十进制数值程控数据字符串程控数据表达式程控数据任意块程控数据后缀程控数据 功能元素第二节 程控消息句法分隔符的功能元素分隔符的功能元素n程控消息分隔符:n在一条程控消息内,分隔元素。定义为:空白;空白字符定义为:0 x00 0 x09,0 x0B 0 x20第二节 程控消息句法n程控题头分隔符:n用于分割与n程控数据分隔符:n分隔元素空白空白空白,第二节 程控消息句法n程控消息结束符:空白NLENDNLEND0 x0A第二节 程控消息句法命令程控题头功能元素命令程控题头功能元素n功能:n表示器件要执行的操作,后面可跟简单命令题头组合命令题头公用命令题头空白第二节 程控消息句法冒号n简单命令题头n组合命令题头n公共命令题头程控助记符程控助记符程控助记符:程控助记符*第二节 程控消息句法下划线0 x5F0 1 2 3 4 5 6 7 8 90 x300 x39n程控助记符:n最大长度=12;优选长度=4n命名应与功能相关。eg:MEASure MEAS大小写字母_大小写字母数字英文字母0 x410 x5A0 x610 x7A第二节 程控消息句法询问程控题头功能元素询问程控题头功能元素n功能:n表示器件要执行的操作,并使器件产生一个响应。后面可跟简单询问题头组合询问题头公用询问题头空白第二节 程控消息句法冒号n简单命令题头n组合命令题头n公共命令题头程控助记符?程控助记符程控助记符:?程控助记符*?第二节 程控消息句法程控数据功能元素程控数据功能元素n功能:n传递与程控题头有关的各类参数n字符程控数据n功能:传递短字符串表示的参数信息neg:SYSTEM:Header ONn句法:程控助记符第二节 程控消息句法n十进制数值程控数据n规则:n范围n尾数所包含的字符数目不多于255(领头的0除外)n指数:数值在 32000 +32000 内n取舍:n程控数据精度高于器件内部精度时要进行取舍;n按绝对值4舍5入;n取舍过程在解释后进行。n错误报告:按取舍后的译码值进行n如果数值超过响应题头所允许的范围,则报告一个“执行错”第二节 程控消息句法尾数空白指数-可选数字+.数字可选数字数字E|e空白-+数字尾数指数数字可选数字第二节 程控消息句法n后缀程控数据n在十进制程控数据之后,表示相应的单位因子,用来修改器件对程控数据的解释。第二节 程控消息句法n非十进制数程控数据n二进制#Bn八进制#Qn十六进制#H第二节 程控消息句法n字符串程控数据传送任何用7bit-ASCII表示的字符,适用于显示文本的场合。第二节 程控消息句法n任意块程控数据传送8bit二进制数据,适用于大批量数据传送(1):#14(2):#3004(3):#0 NLEND传送4个数据字节举例:第二节 程控消息句法n表达式程控数据n对标量、矢量、矩阵和字串变量进行计算,由器件来处理参数。()第二节 程控消息句法器件的讲格式器件的讲格式有题头格式无题头格式第二节 程控消息句法第三节 响应消息句法n一、仪器的响应消息n二、响应消息编码句法第四节 状态数据报告结构一、仪器的状态数据报告一、仪器的状态数据报告n改进和扩充了IEEE488.1规范nSR(串行查询)nPP(并行查询)n定义了状态报告的完整模式n仪器状态报告结构n状态数据结构n寄存器模式:记录器件的事件和状态的寄存器;n队列模式:记录顺序状态和其它信息的队列。n提供了一种器件传送IEEE488.1STB给控者的方法:n串行查询n公用命令第四节 状态数据报告结构Status Data Structure#0Status Data Structure#1Status Data Structure#2Status Data Structure#3Status Data Structure#4Status Data Structure#5Status Data Structure#7 Status Byte Register7 5 4 3 2 1 0RQS6MSSService Request EnablingService Request Generation488.1 Service Request FunctionSummary StatusSummary StatusEnabled Summary StatusService Request Indication(rsv)MSSSRQRQS本地消息,用以驱动SR接口功能产生服务请求综合状态状态报告结构总图二二、状状态态报报告告的的基基本本结结构构和和操操作作服务请求read by Serial Poll第四节 状态数据报告结构7DIO8RQS6DIO7MSSESBDIO6MAVDIO53DIO42DIO31DIO20DIO1Status Summary Messages主汇总消息read by*STB标准事件状态输出队列三、器件状态字节结构第四节 状态数据报告结构RQS6MSS7MAVESB23017452301X&ORServiceRequestGenerationStatus Summary MessagesService Request Enable register*SRE*SRE?read by Serial PollStatus Byte Registerread by*STB?服务请求使能四、服务请求产生四、服务请求产生Service Request Enable RegisterStatus ByteRegisterNew Reson for ServiceService Request SynchronizationStatus Byte Latch488.1 Source Handshake488.1 Service Request functionSTBSTBSREreqtreqf488.1APRS488.1rsv488.1SPAS andSDYS or STRS488.1STBSTBRQSSRQBUS:DIO1-6,DIO8BUS:DIO7BUS:SRQ第四节 状态数据报告结构图4.21 服务请求的产生第四节 状态数据报告结构SRWSSRISSRASreqtreqforponAPRSAPRSSRIS:空闲态SRWS:等待态SRAS:作用态APRS:确定的查 询作用态rsv=FALSErsv=FALSErsv=TRUE图4-22 rsv 状态图第四节 状态数据报告结构五、推荐的器件通用状态数据结构五、推荐的器件通用状态数据结构n功能:n队列是一个数据结构,含有顺序的信息清单。当所有的信息都已从清单中读出时,该队列清控。n读队列n由器件定义的询问来读取,该询问使读出的项目放入Oq。n写队列n不能用直接写入。n清除队列n*CLS;n读出队列中的所有项目;n其它由器件指定的方法。Summary MessagedatadatadatadatadatadataQueueQueue not empty图4-24 序列型状态数据结构第四节 状态数据报告结构orn n-1*n n-1n n-12 1 0*2 1 02 1 0Device Status Continuously MonitoredCondtion RegisterTransition FilterSelects which transitions of condition bits will set corresponding event bitsEvent Register(Latched conditions)Event enable RegisterSelects which events can set the Summary Message*:oror both&Summary Message 图4-23 寄存器型状态数据结构第四节 状态数据报告结构图4-25 标准状态数据结构六六、必必须须实实现现的的标标准准状状态态数数据据结结构构第四节 状态数据报告结构PON7URQ6CME5EXE4DDE3QYE2RQE1OPC076543210&ORSummary MessageEvent Summary Bit(ESB)Standard Event Status Enable Register*ESE*ESE?Standard Event Status Register*ESR?Power OnUser RequestCommand ErrorExecution ErrorDevice Dependent ErrorQuery Errorrequest controlOperation Complete标准事件状态寄存器模式第四节 状态数据报告结构标准状态事件寄存器标准状态事件寄存器n读:n*SER?n写:n只能清除,不能程控写入。n清除:n*CLSn通电状态清除标志为真时的电源接通n*ESR?命令第四节 状态数据报告结构标准事件状态使能寄存器标准事件状态使能寄存器n功能n允许标准事件状态寄存器中的一个或几个事件反映于ESB。n读:n*ESE?n写:n*ESE n清除:n*ESE 0n通电状态清除标志为真时,或在未执行*PSC命令的条件下接通电源;第四节 状态数据报告结构标准队列模式标准队列模式n反映于MAVn读:nFIFOn当器件处于讲者作用态时,该队列被讲出。n写:n清除:第四节 状态数据报告结构七、七、并行查询响应的处理并行查询响应的处理第五节 公用命令概述概述n规定了每个相容器件有能力执行的公用命令集。n共39个命令,分10个组。n其中13个公用命令要求器件必须执行,其余为可选命令。n自动组态组、宏命令组、存贮设置组的命令必须被同时选用。第五节 公用命令句法句法n公用命令*RST*CLSn公用询问*IDT?*OPC?程控助记符*程控助记符*?第五节 公用命令1自动组态*ADD *DLF2系统数据*IND?*OPT?*PUD*PUD?*RDT*RDT?3内部操作*CAL?*LRE?*RST*TST?4同步*OPC *OPC?*WAI5宏*DMC *EMC *EMC?*GMC?*LMC?*PMC6并行查询*IST?*PRE *PRE?7状态和事件*CLS *ESE *ESE?*ESR?*PSC*PSC?*SRE*SRE?*STB?8触发*DDT *DDT?*TRG9控制*RCL *SAV10保存设置*PCB分组一、公用命令和询问集第五节 公用命令1*ADDAcceptAddressCommand接受地址命令2*CAL?CalibrationQuery校准询问3*CLSClearStatusCommand清除状态命令4*DDTDefineDeviceTriggerCommand定义器件触发命令5*DDT?DefineDeviceTriggerQuery定义器件触发询问6*DLFDisableListenerFunctionCommand禁止听者功能命令7*DMCDefineMacroCommand定义宏命令8*EMCEnableMacroCommand使能宏命令9*EMC?EnableMacroQuery使能宏询问10*ESEStandardEventStatusEnablecommand标准事件状态使能命令11*ESE?StandardEventStatusEnableQuery标准事件状态使能询问12*ESR?StandardEventStatusRegisterQuery标准事件状态寄存器询问13*GMC?GetMacroContentsQuery获取宏内容询问14*IDN?IdentificationQuery识别询问15*IST?IndividualStatusQuery个别状态询问16*LMC?LearnMacroQuery学习宏询问17*LRN?LearnDeviceSetupQuery学习器件设置询问18*OPCOperationCompleteCommand操作完成命令19*OPC?OperationCompleteQuery操作完成询问20*OPT?OptionIdentificationQuery选用识别询问21*PCBPassControlBackCommand通过控制反馈命令22*PMCPurgeMacrocommand清除宏标记命令23*PREParallelPollRegisterEnableCommand并行查询寄存器使能命令24*PRE?ParallelPollRegisterEnableQuery并行查询寄存器使能询问25*PSCPowerOnStatusClearCommand开机状态清除命令26*PSC?PowerOnStatusClearQuery开机状态清除询问27*PUDProtectedUserDataCommand保护用户数据命令28*PUD?ProtectedUserDataQuery保护用户数据询问29*RCLRecallCommand回调命令30*RDTResourceDescriptionTransferCommand资源描述转移命令31*RDT?ResourceDescriptionTransferQuery资源描述转移询问32*RSTResetCommand复位命令33*SAVSaveCommand存储命令34*SREServiceRequestEnableCommand服务请求使能命令35*SRE?ServiceRequestEnableQuery服务请求使能询问36*STB?ReadStatusByteQuery读状态字节询问37*TRGTriggerCommand触发命令38*TST?Self-TestQuery自测询问39*WAIWait-to-ContinueCommand等待继续命令总总表表第五节 公用命令自动组态*ADDAcceptAddressCommand接受地址命令*DLFDisableListenerFunctionCommand禁止听者功能命令系统数据M*IDN?IdentificationQuery识别询问*OPT?OptionIdentificationQuery选用识别询问*PUDProtectedUserDataCommand保护用户数据命令*PUD?ProtectedUserDataQuery保护用户数据询问*RDTResourceDescriptionTransferCommand资源描述转移命令*RDT?ResourceDescriptionTransferQuery资源描述转移询问内部操作*CAL?CalibrationQuery校准询问*LRN?LearnDeviceSetupQuery学习器件设置询问M*RSTResetCommand复位命令M*TST?Self-TestQuery自测询问同步M*OPCOperationCompleteCommand操作完成命令M*OPC?OperationCompleteQuery操作完成询问M*WAIWait-to-ContinueCommand等待继续命令宏*DMCDefineMacroCommand定义宏命令*EMCEnableMacroCommand使能宏命令*EMC?EnableMacroQuery使能宏询问*GMC?GetMacroContentsQuery获取宏内容询问*LMC?LearnMacroQuery学习宏询问*PMCPurgeMacrocommand清除宏标记命令并行查询M1*IST?IndividualStatusQuery个别状态询问M1*PREParallelPollRegisterEnableCommand并行查询寄存器使能命令M1*PRE?ParallelPollRegisterEnableQuery并行查询寄存器使能询问状态和事件M*CLSClearStatusCommand清除状态命令M*ESEStandardEventStatusEnablecommand标准事件状态使能命令M*ESE?StandardEventStatusEnableQuery标准事件状态使能询问M*ESR?StandardEventStatusRegisterQuery标准事件状态寄存器询问*PSCPowerOnStatusClearCommand开机状态清除命令*PSC?PowerOnStatusClearQuery开机状态清除询问M*SREServiceRequestEnableCommand服务请求使能命令M*SRE?ServiceRequestEnableQuery服务请求使能询问M*STB?ReadStatusByteQuery读状态字节询问触发*DDTDefineDeviceTrigg
展开阅读全文