1673G的指令包括普通的SCPI命令,系统级的设置和配置命令,以及针对各个选件(逻辑分析仪,示波器和码型产生器)的命令。文中的驱动主要针对逻辑分析仪和示波器进行编写,预达到可以对逻辑分析仪和示波器进行仪器控制,并且可以得到逻辑分析仪和示波器的采集数据,可以得到示波器的测量数据。
以实现初始化函数AGl673GInitialize.vi为例, 先用VISAOPEN节点打开一个仪器的Session,然后调用propertv nodtj识别仪器的接口类型,建立计算机与仪器之间的通信。然后调用VIsA write向仪器发出%IDN?命令,接着调用vIsA 0PEN读取仪器的响应结果,对读取到的字符串进行分析,与仪器的标识符进行比较,若结果正确就输出dupVIsA Session供以后的函数节点调用。程序调试成功后把程序制作成sutVI以备调用。具体流程如图2所示。
然后根据表1的命令分类,依据各种命令的功能,组合成各种(20mponent VIs和ApplicatioVIs功能,然后同上的方法调用VISA节点和LahvIEw对字符串和数据、数组之间转换的节点(VI模板)编写所有的驱动VI,并且在最后形成一个VI树。VI树中应包含仪器驱动所有的V!,如图3所示。
基于VISA仪器驱动的设计基本步骤:熟悉仪器的操作,熟悉仪器的变成指令,确定要实现的VIs,形成仪器驱动的设计框架;调用VISA节点实现组件VIs,并在组件VIs的基础上实现需要的应用VIs;把仪器驱动中的VI制作成subVI以方便用户调用;描述各个VI的功能和连接线用法。