当前位置:首页 > 基于labview的任意波形发生器(含vi下载地址)
图3.3 当通道选择控件为True时,选中1通道
3.1.3 通道编辑模块
在这模块上有8个Boolean控件,分别为标准波形、手绘波形、编辑波形、0+1->0、0+1->1、读入波形文件、 保存波形文件、清空通道. 这8个控件用以选择不同的功能,它们组成一个簇.当任意的一个控件按下后,其值会变成True , 然后通过Cluster To Array 、Search 1D Array函数选择被按下的控件.
这个模块采用Case结构,控件与Case结构对应的框图于表3.1.
表3.1: 控件与Case结构对应的框图 控件 Case结构对应的框图 没有控件按下 0 标准波形 1 手绘波形 2 编辑波形 3 0+1->0 4 0+1->1 5 读入波形文件 6 保存波形文件 7 清空通道 8 函数的功能是将簇转换为数组.因为我们前面是将8个控件组成了簇,所以我们现在通过这个函数将簇转换为数组.
函数的功能是从指定的位置开始寻找
element参数指定的元素,在这 里element与一个为True的Boolean常量相连,意义是查找数组中值为True
的那个元素,也即我们按下的那个键.其实际结构如图3.4.
5
图3.4 对被按下控件的处理图
(1) 标准波形
当它被选中的时候在CASE结构执行1号框图.
功能是生成标准的正弦波、方波、三角波、锯齿波,其频率、幅值、相位、电压偏置可设.其中调用了子程序. 由它生成标准波形,并将绘制的波形保 存在通道中.子程序在程序中的位置和子程序的结构图如图3.5图3.6所示.
图3.5 子程序在程序中的位置
6
图3.6 子程序的结构图
它的功能是对簇元素按名称解包即将前面板设置好的数据通过这个函数解包分离出来,主要包括频率、幅值、相位、电压偏置值.
这部分的意思是只有解包出来的信号类型与方波的类型相同,才会出现占空比的设置,其他的波形就不会出现要求设置占空比.
是占空比的属性节点,它代表占空比的可见与不可见.
这部分的含义是在一个窗口上信号出现几个周期,如果出现3个的话,For循环就会运行3次,在窗口上就会出现3个周期的波形.
其中调用了子程序(如下图所示) 这个子程序采的是Case结构,它能生成标准波形。
生成正弦波的框图如图3.7:
7
图3.7 生成正弦波的框图
具体的生成公式为:y=amplitude*sin(2*pi/1000*(i+phase/360*1000))+offset
函数的功能是从指定的位置分离成两个数组.我用这个函数的目的是从设置的相位开始将原来的数组分成两个数组.
然后通过函数来显示波形.这样的话,就任意相位的波形可以显示,而不是从0度开始.
生成方波的框图如图3.8:
图3.8 生成方波的框图
8
共分享92篇相关文档