开始使用WaveForms SDK

此页面正在构建中。

WaveForms SDK是在WaveForms安装中提供的一套工具,用于开发使用Digilent测试和测量设备的定制软件解决方案。波形SDKAPI可以在多种编程语言中使用,使其易于在许多不同的平台上使用。

通常测试和测量设备是通过个人计算机的WaveForms应用程序控制和配置的。在给定的环境中,这样的设置可能是不可能的,或者在WaveForms的脚本环境之外,可能需要大量的自动信号测量。wavforms SDK提供了必要的工具来帮助为任何问题制定完美的解决方案。

本指南演示了一些基本工具的用法,并提供了一些模式,以帮助您开发自己的应用程序。


库存


SDK概述

WaveForms SDK包含在WaveForms中,并与应用程序一起安装。SDK可以通过动态库(一个包含数据的模块,可以被其他应用程序使用)与C/ c++、c#、Python和Visual Basic一起使用。

另一个重要的文件是包含所有常量定义的文件。如果你想从Python中使用SDK,这个文件是一个Python模块,而C/ c++应用程序的常量是在头文件中定义的。

SDK中提供了每种编程语言的工作代码示例,可以在以下位置找到:

  • Windows 32位:C:\Program Files\Digilent\ WaveFormsSDK \样品
  • Windows 64位:C:\Program Files (x86)\Digilent\ WaveFormsSDK \样品
  • Linux:/usr/share/digilent/waveforms/samples
  • macOS:/应用程序/ WaveForms.app /内容/资源/ SDK /样品

对于其他例子,请检查:使用波形SDK


工作流

1.导入常量和加载动态库

wavforms SDK Python函数使用C兼容的数据类型,所以在动态库和包含常量的模块中,你还需要ctypes模块,默认情况下与Python一起安装。

作为项目的第一步,复制dwfconstants.py文件保存到项目目录(它位于示例代码之间,在py文件夹),然后加载必要的模块和动态库。

可选:从安装路径中导入常量

或者,你可以从WaveForms安装路径导入dwfconstants.py文件。这样,如果要更新文件,您就不必在项目中进行更改。


2.连接测试测量装置

下一步是“打开”你的设备。如果你只连接了一个测试和测量设备,最简单的方法是要求WaveForms SDK连接到第一个可用的设备。

可选:连接指定设备

如果您连接了多个测试和测量设备,打开第一个可用的设备可能不是最好的选择。如果您想要打开特定类型的设备,请使用右边显示的功能。

可选:错误检查

如果你的设备无法连接,你可以检查是否有错误。


3.使用仪器

示波器

3.1初始化作用域

在用示波器测量之前,必须先把示波器设置好。改变这些值以适应您的需要。

3.2测量电压

你可以测量电压,就像使用WaveForms中的伏特计仪器一样。

3.3录制信号

可选:触发

在记录信号之前,您可能需要设置触发。设置触发器参数以满足您的需要。

您可以定义自定义触发器源名称,以使函数的使用更容易。

示波器最重要的特点是它能记录信号。记录的电压可以存储在一个列表中。

3.4重置作用域

使用后,将示波器重置为默认设置。


波形发生器

3.1生成信号

使用波形发生器产生不同的信号。

您可以定义自定义函数名,以使函数的使用更容易。

3.2重置Wavegen

使用后,将wavegen重置为默认设置。


电力供应
3.1模拟发现电源

模拟发现只有固定的供应,所以只有有限数量的功能可用。

3.1模拟发现2和模拟发现Studio Supplies

这些设备有可变的正电源和负电源,因此电压水平也可以设置。

3.1模拟发现Pro 3X50和数字发现供应

带有数字电源的设备只有正电压电源,电压电平在1.2 - 3.3伏特之间。

可选:电源包装功能

为了更容易地使用上述函数,您可以创建一个包装器函数,它能够调用您需要的函数。

3.2电源复位

使用后,将电源重置为默认设置。


逻辑分析仪

3.1初始化逻辑分析仪

在使用逻辑分析仪进行测量之前,必须先将其设置好。改变这些值以适应您的需要。

3.2记录逻辑信号

可选:触发

在记录信号之前,您可能需要设置触发。设置触发器参数以满足您的需要。

在列表的列表中记录逻辑信号,然后为所需的DIO行选择一个特定的。

3.3逻辑分析仪复位

使用后,请将逻辑分析仪重置为默认设置。


模式发生器

3.1生成逻辑信号

配置模式发生器以产生逻辑信号。

只有当DIO线被配置为输入并被静态I/O工具设置为LOW状态时(这些是所有线的默认设置),才能使用DIO线进行模式生成。

您可以定义自定义函数和触发器源名称,以使函数的使用更容易。

3.2重置图案生成器

使用后,将模式生成器重置为默认设置。


静态I / O

3.1设置引脚为输入或输出

测试与测量设备的每个数字引脚一次只能用作输入或输出。每一行的默认设置是输入状态。

3.2获取引脚状态

用下面的代码片段读取DIO行状态:

3.3设置引脚状态

要设置DIO行状态,必须将其设置为output!

3.4重置静态I/O

使用完毕后,请将仪器恢复到默认设置。

可选:限制DIO通道电流

带有数字电源的测试和测量设备(digital Discovery和Analog Discovery Pro 3×50)也有限制DIO通道输出电流的选项。

未测试此功能。

可选:DIO通道上拉/下拉

带有数字电源的测试和测量设备(digital Discovery和Analog Discovery Pro 3×50)也可以选择向上或向下拉DIO通道。

未测试此功能。


协议:UART

3.1初始化接口

在使用通信接口之前,必须通过将通信参数设置为所需的值来初始化它。

未测试此功能。

3.2接收数据

使用右边的函数在初始化的UART接口上读取数据。

未测试此功能。

3.3发送数据

使用右边的函数将初始化的UART接口上的数据发送到另一个设备。

未测试此功能。

3.4复位接口

使用完毕后,请将仪器恢复到默认设置。


协议:SPI

3.1初始化接口

在使用通信接口之前,必须通过将通信参数设置为所需的值来初始化它。

未测试此功能。

3.2接收数据

使用右边的函数在初始化的SPI接口上读取数据。

未测试此功能。

3.3发送数据

使用右边的函数将初始化的SPI接口上的数据发送到另一个设备。

未测试此功能。

3.4交换数据

当您向从设备发送命令时,您可能希望从它接收数据。在这种情况下,可以使用数据交换功能。

未测试此功能。

3.5监视SPI通信

如果两个其他设备,一个主设备和一个从设备,正在使用初始化的通信接口进行通信,测试和测量设备可以用来监视这个通信(记录输入和输出数据)。

未测试此功能。

3.6复位接口

使用完毕后,请将仪器恢复到默认设置。


协议:I2C

3.1初始化接口

在使用通信接口之前,必须通过将通信参数设置为所需的值来初始化它。

未测试此功能。

3.2接收数据

使用右边的函数读取已初始化的I2C接口上的数据。

未测试此功能。

3.3发送数据

使用右边的函数将初始化的I2C接口上的数据发送到另一个设备。

未测试此功能。

3.4交换数据

当您向从设备发送命令时,您可能希望从它接收数据。在这种情况下,可以使用数据交换功能。

未测试此功能。

3.5监视I2C通信

如果两个其他设备,一个主设备和一个从设备,正在使用初始化的通信接口进行通信,测试和测量设备可以用来监视这个通信(记录输入和输出数据)。

未测试此功能。

3.6复位接口

使用完毕后,请将仪器恢复到默认设置。


上面的代码片段展示了一些工具的基本功能。要了解更多的可能性(高级功能和更多的仪器),请查看WaveForms SDK的文档和可用的示例脚本。


4.切断设备

当脚本退出时,关闭打开的连接是非常重要的,以使设备可用于其他软件(如WaveForms应用程序)。


创建模块

为了避免将几百行代码复制到每个项目中,您可以从控制工具的函数中创建Python模块。然后可以将这些模块导入到项目中。

要创建模块,请使用所需的名称和扩展名创建一个新文件* . py,然后将各自的函数复制到该文件中。不要忘记将初始化器部分复制到每个模块中。

将您的模块放在一个单独的文件夹中,命名此文件夹(例如WF_SDK是一个很好的名称,因为它是暗示),然后复制dwfconstants.py将文件放入同一个文件夹中。

的导入路径不要忘记更正dwfconstants.py文件,如果您从项目目录导入它。必须在文件名之前添加父目录的名称(WF_SDK),后面跟着一个点。

如果从安装文件夹导入该文件,则无需进行任何更改。

打开下面的下拉列表,查看创建的模块的内容。

Device Control—Device .py

示波器控制- scope.py

波形发生器控制- wavegen.py

Power Supplies控制- Supplies .py

逻辑分析仪控制- Logic .py

模式生成器控制- Pattern .py

静态I/O控制- Static .py

协议:UART接口- Protocol / UART .py

此模块包含未测试的函数。

协议:SPI接口-协议/ SPI .py

此模块包含未测试的函数。

协议:I2C接口-协议/ I2C .py

此模块包含未测试的函数。


测试

将模块文件夹(本例中为WF_SDK)复制到项目目录中,然后创建一个新的Python脚本。导入必要的模块,然后使用您的功能来控制测试和测量设备。

在下拉列表中,将展示两个示例和一个项目模板。

注意:使用示波器和波形发生器的例子不能在没有模拟I/O能力的设备上工作(数字发现)。

使用示波器和波形发生器

这个例子在波源通道上生成一个正弦信号,然后记录在示波器通道上。在您的设备上连接各自的通道!

使用逻辑分析仪和模式生成器

这个例子产生一个PWM信号在DIO线和读取它与逻辑分析仪。由于同一行同时用作输入和输出,因此不需要进行外部连接。

使用静态I/O和电源

将led和串联电阻连接到设备的每个DIO通道。使用正电源或数字电源为led提供电流,然后使用静态I/O仪器来吸收电流(打开/关闭led)。

空的项目模板

填写此模板。要有创造性,在任何配置中使用任何工具。


下一个步骤

有关如何使用Digilent测试和测量设备的更多指南,请返回设备的资源中心,从测试和测量这个维基的页面。

有关波形的更多信息,请访问波形参考手册

有关技术支持,请访问测试和测量部分Digilent论坛。