LabVIEW 程序设计进阶.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
LabVIEW 程序设计进阶

数据采集、分析程序 并行结构程序 错误处理方法 程序界面设计 采集 分析 显示 存储 问题: 如何同时停止两个循环? 问题: 如何同时停止两个循环? 解决方案: 利用LabVIEW中的局部变量 可以输入错误代码,查看LabVIEW对错误的解释 通常与While循环一起使用 每次循环响应一个事件 没有时间发生则处于Sleep状态 一个While循环中只放置一个事件结构 尽量不要在事件结构中放置复杂的处理代码 如果事件响应需要复杂的处理可结合后面将讲到的生产者/消费者模式 更多关于事件结构的注意事项请参考LabVIEW帮助及相关书籍 在一些应用中,你也许希望通过程序实时改变一些前面板控件的属性 例1: 当用户输入错误信息时, 希望LED显示控件变为红色 例2: 当采集的温度超过某一阈值, 希望波形曲线变为红色 在LabVIEW中,可通过属性节点的编程完成这些功能 演示: 创建并使用属性节点 通过调用节点对 VI或控件 执行某种由程序控制的“方法”操作 大部分“方法”具有参数 举例: 创建并使用调用节点 程序框图不要太大 尽量在一屏中放下,或者至多只需在一个方向上拖动 程序如果实在太大,应考虑使用子VI (将在后续介绍) 添加必要的注释 有些顺序帧结构可以用状态机替换 尽量不要用变量代替连线 事件结构 超时设置 事件选择标签 事件数据节点 事件过滤器节点 编辑事件 事件 事件源 配置事件 通知与过滤事件 通知事件(green arrow) 用户动作已经发生并处理 过滤事件(red arrow) 用户动作已发生但尚未处理事件. 允许自定义事件响应 使用事件结构时的注意事项 修改控件的属性 属性节点 调用节点 方法名称 参数 界面设计原则 一致 简洁 和谐 编程注意事项 养成良好的编程习惯 National Instruments 这两种方法都是不行的: 第一种: 根据数据流,循环一但开始执行,说明数据流已经进入循环,就不会再读取循环外的数据改变 第二种:根据数据流,只有当进入循环的数据准备好时,循环才会开始执行,所以第一个循环执行完,把布尔数据流输出之后,才会开始执行第二个循环 这两种方法都是不行的: 第一种: 根据数据流,循环一但开始执行,说明数据流已经进入循环,就不会再读取循环外的数据改变 第二种:根据数据流,只有当进入循环的数据准备好时,循环才会开始执行,所以第一个循环执行完,把布尔数据流输出之后,才会开始执行第二个循环 由于有可能发生同时写入的竞争状态, 代码执行的结果四种皆有可能 教师可以向学生简要介绍时间数据节点和时间过滤器节点的作用 左右两边分辨是针对VI的调用节点 和 针对控件的调用节点 这是一个反面例子,其实完全可以用While循环+移位寄存器的形式来替换 作业点评 今天的内容 数据采集、分析程序 测试程序流程 采集 分析 显示 软件模块划分 测试程序示例 测试程序主要功能 并行程序结构 数据采集分析程序 并行循环 LabVIEW数据流与并行 LabVIEW数据流与并行 变量 共享变量 避免竞争状态 使用队列传递数据 错误处理机制 LabVIEW中的模板 子VI错误处理 错误解析 错误分支 事件结构 事件结构的使用 National Instruments 这两种方法都是不行的: 第一种: 根据数据流,循环一但开始执行,说明数据流已经进入循环,就不会再读取循环外的数据改变 第二种:根据数据流,只有当进入循环的数据准备好时,循环才会开始执行,所以第一个循环执行完,把布尔数据流输出之后,才会开始执行第二个循环 这两种方法都是不行的: 第一种: 根据数据流,循环一但开始执行,说明数据流已经进入循环,就不会再读取循环外的数据改变 第二种:根据数据流,只有当进入循环的数据准备好时,循环才会开始执行,所以第一个循环执行完,把布尔数据流输出之后,才会开始执行第二个循环 由于有可能发生同时写入的竞争状态, 代码执行的结果四种皆有可能 教师可以向学生简要介绍时间数据节点和时间过滤器节点的作用 左右两边分辨是针对VI的调用节点 和 针对控件的调用节点 这是一个反面例子,其实完全可以用While循环+移位寄存器的形式来替换

文档评论(0)

wannian118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档