cvi教程概论.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
cvi教程概论

第三讲 虚拟仪器驱动程序设计 主讲:乔立岩 Email: qiaoliyan@ (交作业) MSN: qiaoliyan@(在线交流) Tel:ext. 8611 (逸夫楼611);仪器驱动程序的历史;仪器驱动程序的概念;一、 VXIplugplay 规范;1. VPP 规范的特点;2. VPP规范的内容;3. 虚拟仪器系统框架;二、 仪器驱动程序设计(VPP-3);内部设计模型;3. 函数树;按照VPP仪器驱动程序内部设计模型的要求,对于任何仪器,都应有最小函数树。 最小函数树包括初始化、关闭、错误消息、错误查询、复位,自检和版本查询,还应包括至少一个功能函数。;4. 函数面板;函数面板的帮助 函数帮助:描述面板上的函数功能和相关的辅助函数。 控件帮助:对应函数的输入和输出参数,列举参数名,并描述参数,变量类型,有效范围和错误值。 返回帮助:描述返回值变量类型和可能的错误值。;5. 函数面板和函数树设计;三、 VISA(VPP-4);1. VISA的作用;2. VISA的特点;3. VISA库函数;资源操作类函数 寄存器基仪器通讯 viIn8, viIn16, viIn32 viIn16 (dmmHandle, VI_A16_SPACE, 0, manufactureID); viOut8, viOut16, viOut32 viOut16 (dmmHandle, VI_A16_SPACE, 4, 0); 消息基仪器通讯 viRead, viWrite viRead (dmmHandle, readbuf, 100, count); viWrite (dmmHandle, writebuf, 100, count); 格式化I/O viPrintf, viScanf viPrintf (dmmHandle, *IDN?\n); viScanf (dmmHandle, %t, result);; 资源模板 事件处理 viEnableEvent, viDisableEvent viInstallHandler, viUninstallHandler viWaitOnEvent 资源属性 viGetAttribute, viSetAttribute;用VISA函数操作仪器的步骤 打开VISA资源管理器句柄,用到的函数:viOpenDefaultRM; 打开仪器句柄,用到的函数:viFindRsrc、viFindNext、viOpen等; 设置仪器状态、控制仪器操作、读取测量数据、处理仪器事件,用到的函数: viGetAttribute、viSetAttribute、viIn16、viOut16、viPrintf、viScanf、viInstallHandler、viUninstallHandler、viEnableEvent、viDisableEvent、viWaitOnEvent等; 释放仪器句柄,用到的函数:viClose; 释放VISA资源管理器句柄,用到的函数:viClose。;VISA函数应用举例 void main(void) { error=viOpenDefaultRM (rsrcManager); /*打开VISA资源管理器*/ //rsrcManager为得到的VISA资源管理器句柄 if(error!=VI_SUCCESS) /*如果出错,弹出错误信息对话框,返回*/ { MessagePopup(Error,Open VISA Resource Manager Error!); return; } error = viOpen (rsrcManager, VXI0::16::INSTR, VI_NULL, VI_NULL, instHandle); //instHandle为得到的仪器句柄 if(error!=VI_SUCCESS){ MessagePopup(Error,Open Instrument Error!); return; } else{ /*获取仪器模块代码,设置仪器操作超时时间为2000毫秒*/ viGetAttribute (instHandle, VI_ATTR_MODEL_CODE, moduleID); viSetAttribute (instHandle, VI_ATTR_TMO_VALUE, 2000); } viClose(instHandle); /*关闭仪器句柄和VISA资源管理器*/ viClose(rsrcManager); } ;四、 软面板 Soft Panel(VPP-7);传统仪器面板;1. 软面板的作用;2. VPP规范对软

文档评论(0)

骨干 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档