我和LabVIEW——一个NI工程师十年的编程经验33断点和探针.doc

我和LabVIEW——一个NI工程师十年的编程经验33断点和探针.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
断点和探针 1. 断点 断点和探针是调试 LabVIEW 代码时最常用的两个工具。LabVIEW 中的断点在使用和功能上都比较简单、直观:使用工具选板上的断点工具,在想要设置或者取消断点的代码处点击鼠标即可;或直接在程序框图的节点、数据线上右击鼠标,就可以看到设置或取消断点的菜单项。 断点几乎可以设置在程序的任何部分。当程序运行至断点处,就会暂停,等待调试人员的下一步操作。很多其他语言的调试环境都有条件断点,LabVIEW 的端点没有类似的设置,LabVIEW 是使用条件探针来实现条件断点功能的。 断点是会保存在 VI 中的。关闭带有断点的 VI,程序执行至断点处还是会停下来,并且这个 VI 会被自动打开。 如果某个 VI 不允许你设置断点,很可能这个 VI 被设为不允许调试了。此时,只要在 VI 属性中重新设置一下即可。(LabVIEW 的调试环境.2) 2. 探针 探针的功能类似于其他语言调试环境中的查看窗口,用于显示变量当前状态下的数据。LabVIEW 与其他语言不同之处在于,LabVIEW 是数据流驱动型的图形化编程语言。LabVIEW 中的数据传递主要不是使用变量,而是通过节点之间的连线完成的。所以 LabVIEW 的探针也不是针对变量的,而是加在某根数据线上的。 LabVIEW 的探针也是图形化显示的。比如为一根数字类型的数据线加探针,探针一般就是一个数字型显示控件,见图1。Error Cluster 类型的数据线的探针,则看上去就像是个 Error Cluster,见图2。 图1、图2:数值型和错误信息型数据线的探针 3. 选取其他类型控件作为探针 如果你觉得 LabVIEW 默认的探针不美观或不适用,则可以在数据线上点击鼠标右键,选择 Custom Probe - Controls - ... 选取一个其他控件作为探针,如图3。但是要注意,你选取的控件的数据类型要与数据线的数据类型一致才可以。 图3:使用仪表盘控件作为数值型数据线的探针 4. 条件探针 在你设置断点后,程序在每次执行到断点的时候都会停下来。但有的时候,调试者希望程序只在被监测的数据满足某一条件时,才暂停运行。比如,被监测的数据在正常情况下应大于零,调试者希望一旦数据小于零则暂停。在 LabVIEW 中,可以使用条件探针来实现这样的功能。 图4:数值型条件探针 以图4 为例,如果你希望程序中的循环在运行 8 次以后才停下来,就可以使用条件探针。在记录循环次数的 i 的输出数据线上点击鼠标右键,选择 Custom Probe 下以 Conditional 开头的探针,打开探针上的 Condition 页,就可以设置条件了。此时,若被探测的数据满足你所设置的条件,程序就会暂停。 5. 用户自定义探针 如果你觉得 LabVIEW 自带的探针功能还不够强大,或者你自己创建了一种数据类型,而LabVIEW 没有适合它的探针,这时你可以自己创造一个满意的探针出来。 用户自定义的探针其实也是一个 VI。LabVIEW 自带了一些已经做好的探针,这些探针都被放置在 lvdir\vi.lib\_probes 文件夹下。你可以打开这里面的 VI 看一看已有的自定义探针是如何做的。比如我们在图4 中所使用的 I32 型条件探针的 VI 是 ConditionalSigned32.vi。 需要新建一个自定义探针时,先在数据线上点击鼠标右键,选择 Custom Probe - New。这时 LabVIEW 会弹出一个向导界面。按照向导的提示,输入所需信息,LabVIEW 会为你生成一个用作探针的 VI 框架,对这个 VI 稍作修改,即可成为一个新的探针。 这个探针 VI 有一个输入和一个输出。输入的是被探测的数据,输出是一个布尔类型,表示程序是否需要暂停。这个 VI 的界面也就是探针的外观。探针所实现的功能完全依赖于如何对其编程。

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档