- 1、本文档共56页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[物理]仪器编程基础
什么是GPIB? 通用接口总线(General Purpose Interface Bus,简写为GPIB)是由IEEE协会(Institute of Electrical and Electronic Engineers)规定的一种ANSI/IEEE488标准。GPIB为PC机与可编程仪器之间的连接系统定义了电气、机械、功能和软件特性。 GPIB历史 1965年, 惠普公司(Hewlett-Packard)设计了惠普接口总线(HP-IB,? 用于连接惠普的计算机和可编程仪器.由于其高转换速率(通常可达1Mbytes/s),? 这种接口总线得到普遍认可, 并被接收为IEEE标准488-1975和ANSI/IEEE标准488.1-1987. 后来,? GPIB(General-Purpose Interface Bus)比HP-IB的名称用得更广泛.? ANSI /IEEE?? 488.2 -1987加强了原来的标准, 精确定义了控制器和仪器的通讯方式.? 可编程仪器的标准命令(Standard Commands for Programmable Instruments, SCPI)采纳了IEEE488.2定义的命令结构,创建了一整套编程命令. GPIB总线结构 GPIB是一个数字化的24线并行总线。它包括8条数据线,5条控制线(ATN、EOI、IFC、 REN和SRQ),3条握手线和8条地线。GPIB使用8位并行、字节串行的异步通讯方式。也就是 说,所有字节都是通过总线顺序传送,传送速度由最慢部分决定。由于GPIB的数据单位是 字节(8位),数据一般以ASCII码字符串方式传送。 有三种方式来标明传送数据结束。通常,GPIB包括一根连接线(EOI),用来传送数据完毕 信号。或者,也可以在数据串结束处放入一个特定结束符(EOS)。有些仪器用EOS方法代 替EOI信号线方法,或者两种方法一起使用。还有一种方法,听者(数据接收方)可以计数 已传送的数据字节,当达到限定的字节数时停止读取数据。只要EOI,EOS和限定字节数的 逻辑“或”值为真,数据传送就停止。一般字节计数法作为缺省的传送结束方法,典型的 字节数限定值等于或大于需要读取的数据值。 ?每个设备,包括计算机接口卡,必须有一个0到30之间的GPIB地址。一般GPIB接口板(GPIB卡)设 置为地址0,仪器的GPIB地址从1到30。GPIB有一个控者(你的电脑)来控制总线。在总线 上传送仪器命令和数据,控者寻址一个讲者,一个或者多个听者。数据串在总线上从讲者 向听者传送。 GPIB总线的一些特性 GPIB(IEEE-488) 是一具 24pin 的并列汇流排,每一个装置,包括计算机的界面卡,必须有唯一的 GPIB 地址,GPIB 地址从 0 到 30,0一般是指定给计算机的GPIB界面卡。 信息传输速率最高达 1Mbytes/s。 两装置间其最大间距是 4M,所有汇流排的平均间距为 2M。 最大的电缆线长度为 20M。 最多 15 台装置在汇流排上彼此连结时,最少要有 2-3 台装置的电源是打开的。 多仪器的星形组合 多仪器的线型组合 GPIB编程基础 GPIB编程方法 直接调用NI公司提供的GPIB卡的驱动库来驱动GPIB卡和测试仪器进行通信(NI公司和Keilthly公司的GPIB卡可以支持这种方式). 直接调用AGILENT公司提供的GPIB卡的驱动库来驱动GPIB卡和测试仪器进行通信(Agilent的GPIB卡可以支持这种方式). 直接调用VISA库来驱动GPIB卡和测试仪器进行通信(NI公司和Agilent公司的GPIB卡可以支持这种方式). 我们现在采用的是第一种方式. GPIB编程的步骤 创建一个设备描述符. int Device = 0; /* Device unit descriptor */ int BoardIndex = 0; /* Interface Index (GPIB0=0,GPIB1=1,etc.) */ Device = ibdev( /* Create a unit descriptor handle */ BoardIndex, /* Board Index (GPIB0 = 0, GPIB1 = 1, ...) */ PrimaryAddress, /* Device primary address */ SecondaryAddress,
文档评论(0)