通过CLF节点来调用前面所编写的DLL步骤如下:

(1)单击该节点将其放置在程序框图中,此时该节点没有与任何DLL连接;

(2)右击该节点并选择Configure选项或者直接双击该节点可以打开库函数配置对话框;

(3)在该模块的属性设置中选择DLL文件中所包含的某个函数,然后再设置好函数的返回类型和参数类型。这样就可以使LabVIEW调用DLL文件中的一个函数(针对DLL中的每个函数都需要设置一个CallLibrary Function Node)。最后把该模块的另一端连接到显示模块,就可以显示从USB接口读进的数据。

2.3 EZ-USB FX2的固件程序

固件程序是指运行在设备CPU中的程序。只有在该程序运行时,外设才能称之为具有特定功能的外部设备。固件程序负责初始化各硬件单元,重新配置设备。固件代码的存储位置一般有2种:

第一种是存在主机中,设备加电后由驱动程序把固件下载到片内RAM后执行,即“重新枚举”;

第二种是把固件代码固化到1片E2RPOM中,外设加电后由FX2通过I2C总线下载到片内RAM后自动执行。笔者选用第一种方式,这种方式便于系统的调试和升级。

为了简化和加速用户使用EZ-USB FX2芯片进行USB外设的开发过程,Cypress公司提供了一个完整的固件程序架构,用户只需要提供一个USB描述符表,添加其他端点接收和发送数据的通信代码,以及控制外围电路的程序代码。具体操作可以参考文献[1]中的内容。

2.4 FPGA软件

该系统采用VHDL和BlockDiagram/Schematic相结合的方法来对各功能模块进行逻辑描述,然后通过EDA开发平台,对FPGA芯片进行编程,实现系统的设计要求。

数据采集系统的数据方向是双向的。从计算机端来看,“读数据”即FPGA通过CY7C68013向计算机发送测井数据;“写数据”即计算机通过CY7C68013向FPGA发送测井命令。