LabVIEW中的数据流编程虽然给用户带来了很多方便,但仍有一定的局限性。如果LabVIEW框图程序中有两个节点同时满足节点执行的条件,将导致这两个节点同时执行,此种情况,可采用顺序结构明确这两个节点的执行顺序。
顺序结构可用于实现特定的编程逻辑、程序几个部分之间的同步、调试等。LabVIEW中的顺序结构分为图3-19(a)所示的平铺式顺序结构和图3-19(b)所示的层叠式顺序结构,二者均可从“结构”子选板中创建,且可通过右键菜单中“替换为平铺式/层叠式顺序结构”功能互换。顺序结构中的每个子框图都称为一个帧,刚建立顺序结构时都只有一个帧。
图3-19 顺序结构的形式
(a)平铺式顺序结构;(b)层叠式顺序结构
对于平铺式顺序结构,可以通过在帧边框的左右分别选择在前面添加帧和在后面添加帧来增加一个空白帧。由于每个帧都是可见的,所以平铺式顺序结构不能添加局部变量,不需要借助局部变量在帧之间传输数据。(www.xing528.com)
层叠式顺序结构的表现形式与条件结构十分相似,均在框图的同一位置层叠多个子框图,每个框图都有自己的序号,执行时按照序号从小到大依次执行。条件结构的每一个分支均可为输出提供一个数据源,但层叠式顺序结构输出隧道只有一个数据源。输出可源自任何帧,但仅在执行完毕后数据才输出,而不是在个别帧执行完毕后,数据才离开层叠式顺序结构。层叠式顺序结构中的局部变量用于帧间传输数据,对输入隧道中的数据,所有的帧均可用。
除了外观不同,两种形式的顺序结构执行代码的方式相同。一般推荐使用平铺式顺序结构,因为使用平铺式顺序结构,所有的帧能够同时看到,一目了然,帧之间的数据传输通过隧道而非顺序结构局部变量实现。层叠式顺序结构不符合从左至右的编程习惯,易读性相对差,较难发现其中的问题。但平铺式顺序结构各框架之间的顺序不能改变,而层叠式顺序结构各框架之间的顺序改变较容易。因此,需要改变平铺式顺序结构各个框架之间的顺序时,可先将平铺式顺序结构替换为层叠式顺序结构,再改变各框架之间的顺序,最后改回平铺式顺序结构。
图3-20为一顺序结构的典型实例,用于判断一个随机产生的0~100内的随机数是否小于70。若小于70,输出0;若大于70,输出1。图3-20(a)为平铺式顺序结构,图3-20(b)为层叠式顺序结构,在此结构中使用了结构变量。
图3-20 顺序结构实例
(a)使用平铺式顺序结构;(b)使用层叠式顺序结构
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。