3.4 顺序结构
顺序结构包含一个或多个按顺序执行的子程序框图或帧。跟程序框图其他部分一样,在顺序结构的每一帧中,数据依赖性决定了节点的执行顺序。在LabVIEW中并不经常使用顺序结构。
顺序结构现包括两种类型:平铺式顺序结构和层叠式顺序结构。
平铺式顺序结构可以一次显示所有帧。当所连接的数据都传递至该帧时,将按照从左到右的顺序执行所有帧,直到执行完最后一帧,如图3-15所示。
层叠式顺序结构将所有的帧堆积起来,因此每次只能看到其中的一帧,并且按照0帧、1帧、直到最后一帧的顺序执行,如图3-16所示。
图3-15 平铺式顺序结构
图3-16 层叠式顺序结构
3.4.1 顺序结构的建立
顺序结构位于结构子模板中,选择层叠式顺序结构后放置到流程图编辑窗口中。在顺序结构的框架上单击鼠标右键,将弹出图3-17所示的快捷菜单,选择在后面添加帧或在前面添加帧命令,可以在当前帧的前面或后面创建新帧。顺序结构顶部中间是各子框图标示,如果顺序结构有n帧,执行的顺序是从第0帧开始直到第n-1帧。
图3-17 顺序结构添加帧
3.4.2 顺序结构的应用
【例3-5】 顺序结构的一个典型应用就是计算程序运行的时间,将通过这个例子来说明顺序结构的用法。
1)新建一个VI,在前面板上放置一个数值输入控件“给定数据”和两个数值显示控件“执行次数”“所需时间”。
2)在程序框图上放置一个层叠式顺序结构,用鼠标右键单击结构边框,在弹出的快捷菜单中执行两次“在后面添加帧”,创建1帧和2帧。
3)选取第0帧,记录程序运行初始时间,用鼠标右键单击顺序结构框图的边框,在弹出的快捷菜单中执行“添加顺序局部变量”,这时在第0帧的下边框出现一个黄色小方框,这就是顺序局部变量,它可以在同一个顺序结构中的各帧之间传递数据。
放置一个时间计数器到顺序结构内,它位于函数模板编程→定时→时间计数器(ms)。返回毫秒定时器的值,用于计算占用的时间。用连线工具将它与顺序局部变量相连,这时黄色小方框里会出现一个指向顺序结构外部的箭头,数值可为后续帧使用。
4)选取第1帧,实现等于给定值的匹配运算。
5)选取第2帧,同样放置一个时间计数器函数用于返回当前时间,将它减去顺序局部变量传递过来的第1帧初始时间后就可以得到所用的时间。
6)完成连线,运行程序。
程序流程图和运行结果如图3-18和图3-19所示。
图3-18 计算程序运行的时间流程图
图3-19 运行结果