[分享] 一个NI工程师十年的编程经验

水牛   2009-12-18 10:32 楼主

当我开始在键盘上敲打出这句话的时候,我已经使用 LabVIEW 7 年了。7 年的时间,就算天赋平平也可以积攒下一箩筐可供参考的经验了。所以我打算利用今后的闲暇时间写一些这方面的东西,既可以同大家交流,也是作为自己这七年工作的总结。 
第〇章:序  

  • 我和 LabVIEW 序言
  • 如何学习 LabVIEW

第一章: LabVIEW 的编程环境

  • 工程资源管理器
  • 如何创建和使用 LabVIEW 中的 LLB 文件
  • 如何使用 VI 的重入属性(Reentrant)
  • 用户自定义控件中 Control, Type Def. 和 Strict Type Def. 的区别
  • 调整控件和函数面板的首选项
  • 在文件夹下直接创建新的 VI
  • 图标编辑器上的鼠标双击技巧

第二章:简单程序结构

  • 顺序结构
  • 选择结构
  • 事件结构
  • 循环结构
  • 定时结构
  • 缓存重用结构
  • LabVIEW 中的泛型容器
  • 循环运行某段时间后退出
  • 循环结构的反馈节点

第三章:控件、常量和运算

  • LabVIEW 中的数字型数据 1 - 控件和常量
  • LabVIEW 中的数字型数据 2 - 运算
  • LabVIEW 中的数字型数据 3 - 数值的单位
  • 在字符串中显示多种字体

第四章:常用的程序结构

  • 几种简单的测试程序流程模型
  • 用 LabVIEW 编写 Wizard 类型的应用程序 1 (LabVIEW 6.1 之前)
  • 用 LabVIEW 编写 Wizard 类型的应用程序 2 (LabVIEW 6.1 ~ 7.1)
  • 用 LabVIEW 编写 Wizard 类型的应用程序 3 (LabVIEW 8.0)
  • 用 LabVIEW 编写 Wizard 类型的应用程序 4 (LabVIEW 8.2 之后)
  • 在 LabVIEW 中使用常量定义
  • 多态 VI
  • 全局变量
  • 传引用
  • 利用循环条件结构控制几个任务的执行顺序

第五章:调试

  • LabVIEW 的调试环境
  • 断点和探针
  • 其它常用调试工具和方法
  • LabVIEW 代码中常见的错误
  • 查看一段代码的运行时间
  • 如何调试 LabVIEW 调用的 DLL
  • 根据错误代码得到错误信息

第六章:深入理解 LabVIEW

  • G 语言
  • LabVIEW 是编译型语言还是解释型语言
  • 数据流驱动的编程语言
  • 传值和传引用
  • VI 中的数据空间

第七章:编写优美的代码

  • 用户界面设计 1
  • 用户界面设计 2 - 界面的一致性
  • 用户界面设计 3 - 界面元素的关联
  • 用户界面设计 4 - 帮助和反馈信息
  • 用户界面设计 5 - 限制
  • Caption 和 Label 的书写规范
  • 隐藏程序框图上的大个 Cluster
  • 制作不规则图形的子VI图标
  • 界面设计技巧 1 - 利用自带控件
  • 界面设计技巧 2 - 装饰和背景
  • 界面设计技巧 3 - 用户自定义控件
  • 界面设计技巧 4 - 改进方案
  • 界面设计技巧 5 - 绘图控件

第八章:编写高效率的代码

  • LabVIEW 程序的内存优化 1
  • LabVIEW 程序的内存优化 2 - 子 VI 的优化
  • LabVIEW 程序中的线程 1 - LabVIEW 是自动多线程语言
  • LabVIEW 程序中的线程 2 - LabVIEW 的执行系统
  • LabVIEW 程序中的线程 3 - 线程的优先级
  • LabVIEW 程序中的线程 4 - 动态连接库函数的线程
  • LabVIEW 的运行效率 1 - 找到程序运行速度的瓶颈
  • LabVIEW 的运行效率 2 - 程序慢在哪里
  • LabVIEW 对多核 CPU 的支持

第九章:VI 服务

  • VI Server (VI 服务)
  • 后台任务
  • 在 LabVIEW 中实现 VI 的递归调用
  • VB Script 打开一个VI

第十章:调用动态链接库

  • 动态链接库导入工具
  • CLN 的配置选项
  • 简单数据类型参数的设置
  • 结构型参数的设置
  • 作为函数返回值的字符串为什么不用在 VI 中先分配内存
  • LabVIEW 中对 C 语言指针的处理
  • 调试 LabVIEW 调用的 DLL
  • 为什么在CLN节点中,会自动配置某些DLL函数的参数信息

第十一章:面向对象编程(LVOOP)

  • 利用 LabVIEW 工程库实现面向对象编程
  • 模块接口 API 的两种设计方案
  • LabVIEW 对面向对象的支持
  • 面向对象与数据流驱动的结合
  • LabVIEW 中的类

第十二章:XControl

  • 一个 XControl 的实例
  • 用 XControl 实现面向组件的编程
  • 开发 XControl 1 - 设计
  • 开发 XControl 2 - 创建
  • 开发 XControl 3 - 实现功能控件
  • 开发 XControl 4 - 外观功能VI
  • 开发 XControl 5 - 其他功能 VI
  • 开发 XControl 6 - 属性
  • 开发 XControl 7 - 方法
  • 开发 XControl 8 - 事件
  • 开发 XControl 9 - 使用 XControl

第十三章:项目管理

  • 估算项目工时
  • Palette API

    我和ni.rar (2009-12-18 10:36 上传)

    4.53 MB, 下载次数: 158

回复评论 (6)

谢谢楼主
点赞  2009-12-23 16:01
下来看看,增长经验
点赞  2009-12-23 16:33
樓主你好,謝謝你提供的寶貴資訊,讓我學到很多,目前我也是工作上會用到^^謝謝啊!
点赞  2010-1-4 13:34
测试用例可以组合起来创造出独特的测试条件
点赞  2010-1-4 15:22
谢谢楼主,下了学习!
点赞  2010-1-22 16:49
当我写下这句话的时候,我用labview已经2年了。。。
点赞  2010-1-25 13:50
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复