第1章 LabVIEW概述 1
1.1 虚拟仪器概述 1
1.1.1 虚拟仪器的结构 1
1.1.2 虚拟仪器的特点 2
1.1.3 虚拟仪器的硬件 3
1.1.4 虚拟仪器的软件 3
1.2 LabVIEW基本介绍和发展历史 5
1.2.1 什么是LabVIEW 5
1.2.2 LabVIEW的应用领域 6
1.2.3 LabVIEW的优势 7
1.2.4 LabVIEW的起源与发展历程 8
1.2.5 LabVIEW 2016的新增特性 8
思考与练习 10
第2章 LabVIEW 2016安装 11
2.1 计算机性能要求 11
2.2 LabVIEW 2016的安装 11
第3章 LabVIEW 2016编程环境 18
3.1 LabVIEW 2016启动 18
3.2 LabVIEW 2016编程界面 19
3.3 LabVIEW 2016菜单栏 21
3.4 LabVIEW 2016工具栏 25
3.5 LabVIEW 2016选板 27
3.5.1 “控件”选板 27
3.5.2 “函数”选板 28
3.5.3 “工具”选板 29
3.6 LabVIEW 2016帮助 31
3.6.1 显示“即时帮助” 31
3.6.2 LabVIEW帮助 31
3.6.3 查找范例 32
3.6.4 网络资源 33
3.7 自定义编程环境 33
3.7.1 定制控件和函数选板 33
3.7.2 环境参数设置 34
3.8 LabVIEW应用开发实例 34
思考与练习 36
第4章 数据类型与基本操作 37
4.1 基本数据类型 37
4.1.1 数值型 37
4.1.2 布尔型 43
4.1.3 枚举类型 46
4.1.4 时间类型 48
4.1.5 变体类型 50
4.2 数据运算 51
4.2.1 数值函数选板 51
4.2.2 布尔函数选板 53
4.2.3 比较函数选板 54
4.2.4 表达式节点 55
4.3 数组 56
4.3.1 创建一维数组 56
4.3.2 创建多维数组 57
4.3.3 循环结构创建数组 58
4.3.4 数组函数 59
4.4 字符串 64
4.4.1 字符串与路径 64
4.4.2 字符串数组控件 67
4.4.3 字符串函数 68
4.5 簇 76
4.5.1 簇的创建 77
4.5.2 簇函数 78
4.6 矩阵 81
4.6.1 矩阵概念 82
4.6.2 矩阵转置 83
4.6.3 矩阵的基本运算 84
4.7 波形 85
4.7.1 波形数据 85
4.7.2 波形操作函数 86
思考与练习 88
第5章 程序编辑与调试 90
5.1 VI的创建 90
5.1.1 前面板的创建 90
5.1.2 程序框图的创建 91
5.1.3 图标的创建 92
5.2 VI的编辑 93
5.2.1 选择对象 93
5.2.2 移动对象 94
5.2.3 复制和删除对象 94
5.2.4 对齐和分布对象 95
5.2.5 调整对象大小 95
5.2.6 重新排序 96
5.2.7 修改对象外观 97
5.2.8 连线 98
5.3 VI的运行和调试 99
5.3.1 运行调试工具 100
5.3.2 高亮显示执行过程 100
5.3.3 探针与断点诊断 102
5.3.4 程序调试技巧 105
5.4 错误处理 106
5.4.1 错误簇 107
5.4.2 错误捕获 109
5.4.3 错误报告 111
5.4.4 错误处理 112
思考与练习 114
第6章 程序结构设计 115
6.1 顺序结构 115
6.1.1 平铺式顺序结构 116
6.1.2 层叠式顺序结构 117
6.1.3 顺序结构之间的转换 117
6.2 条件结构 119
6.2.1 条件选择器标签 119
6.2.2 分支选择器 121
6.2.3 分支子程序框 122
6.3 循环结构 123
6.3.1 For循环 123
6.3.2 While循环 124
6.3.3 循环结构数据通道与自动索引 125
6.3.4 移位寄存器 126
6.3.5 反馈节点 127
6.3.6 循环结构应用实例 128
6.4 公式节点 130
6.4.1 公式节点变量 130
6.4.2 公式节点运算符和函数 131
6.5 事件结构 132
6.5.1 事件选择器标签 133
6.5.2 事件数据节点 134
6.5.3 事件结构的设置 135
6.5.4 在LabVIEW中使用事件 138
6.6 使能结构 140
6.6.1 程序框图禁用结构 140
6.6.2 条件禁用结构 141
6.7 变量 143
6.7.1 局部变量 144
6.7.2 全局变量 147
6.8 定时结构 150
6.8.1 定时循环 151
6.8.2 定时顺序 153
6.8.3 定时VI 153
思考与练习 154
第7章 图形显示 156
7.1 波形显示 156
7.1.1 波形图 156
7.1.2 波形图显示实例 162
7.1.3 波形图表 165
7.1.4 波形图表实例 168
7.2 XY图与Express XY图 169
7.2.1 XY图 170
7.2.2 绘制简单利萨如图 170
7.2.3 XY图实例 171
7.2.4 Express XY图 173
7.3 强度图形 175
7.3.1 强度图 175
7.3.2 强度图表 176
7.4 数字波形图 177
7.5 三维图形 179
7.5.1 三维曲面图 180
7.5.2 三维参数图 181
7.5.3 三维曲线图 183
7.6 图形控件 184
7.6.1 极坐标图 185
7.6.2 最小-最大曲线显示控件 186
思考与练习 188
第8章 快速VI技术(Express VI) 189
8.1 Express VI简介 189
8.2 Express VI的创建 190
8.3 波形分析示例 193
8.4 声音录制播放Express VI示例 194
8.5 弹出信息录入框Express VI示例 195
思考与练习 196
第9章 子VI和属性节点 197
9.1 子VI 197
9.1.1 创建子VI 197
9.1.2 定义子VI属性 199
9.2 属性节点 202
9.3 调用节点和引用句柄 205
9.4 属性节点应用实例 207
9.4.1 进度条 207
9.4.2 单选按钮 208
思考与练习 209
第10章 文件操作 211
10.1 文件操作基本术语 211
10.1.1 文件的基本概念 211
10.1.2 文件的基本类型 212
10.1.3 文件操作基本函数 213
10.2 文本文件 215
10.3 电子表格文件 217
10.4 二进制文件 219
10.5 波形文件 221
10.6 数据记录文件 223
10.7 测量文件 225
10.8 配置文件 227
10.9 XML文件 229
10.10 TDMS文件 231
思考与练习 235
第11章 人机界面设计 236
11.1 下拉列表控件和枚举控件 236
11.2 列表框控件 238
11.2.1 单列列表框 238
11.2.2 多列列表框 241
11.3 表格与树形控件 242
11.3.1 表格 243
11.3.2 树形控件 244
11.4 VI属性设置 247
11.5 对话框 252
11.5.1 普通对话框 252
11.5.2 自定义对话框 254
11.6 菜单 255
11.6.1 菜单函数 255
11.6.2 运行主菜单 256
11.6.3 右键快捷菜单 261
11.7 选项卡 263
11.8 多面板 264
11.9 光标 266
11.10 自定义控件和数据类型 268
11.10.1 自定义控件 268
11.10.2 自定义数据类型 269
11.10.3 自定义控件选板和函数选板 270
11.11 用户界面设计 271
11.11.1 修饰静态界面 271
11.11.2 动态交互界面 272
11.12 VI程序设计规则 272
11.12.1 关于前面板的设计 273
11.12.2 关于程序框图的设计 275
11.12.3 关于VI 275
思考与练习 276
第12章 面向对象编程 278
12.1 面向对象的基本概念 278
12.2 类的创建 279
12.3 对象的创建 282
12.4 继承 283
12.5 多态 285
12.6 动态方法 287
12.7 LabVIEW面向对象其他特点 289
12.7.1 构造函数与析构函数 289
12.7.2 对象数据文件操作 290
12.8 两种编程方法的比较 290
12.8.1 测试目的 291
12.8.2 面向过程的方法 291
12.8.3 面向对象的方法 292
12.8.4 两种方法的比较 293
第13章 数据库操作 294
13.1 LabSQL 294
13.1.1 LabSQL简介 294
13.1.2 LabSQL的安装 295
13.2 数据源配置 296
13.2.1 ODBC简介 296
13.2.2 ADO简介 297
13.2.3 建立数据源 298
13.3 MySQL基础 299
13.3.1 MySQL下载与安装 300
13.3.2 启动MySQL服务 303
13.3.3 MySQL常用图形管理工具 304
13.4 数据库操作 305
13.4.1 查询记录 305
13.4.2 添加记录 306
13.4.3 删除记录 307
13.4.4 修改记录 308
第14章 网络通信与编程 310
14.1 网络协议通信 310
14.1.1 TCP通信 311
14.1.2 UDP通信 316
14.1.3 SMTP Email 318
14.1.4 IrDA技术 320
14.1.5 蓝牙技术 321
14.2 DataSocket技术通信 323
14.2.1 DataSocket服务管理器 323
14.2.2 DataSocket服务器 325
14.2.3 DataSocket应用程序接口 325
14.3 远程访问 328
14.3.1 配置服务器 328
14.3.2 远程面板控制 329
14.3.3 浏览器访问 330
第15章 多线程技术 332
15.1 基本概念 332
15.2 VI的优先级设置 332
15.3 生产者/消费者结构 333
15.3.1 队列函数 333
15.3.2 事件型生产者/消费者结构 335
15.3.3 数据型生产者/消费者结构 336
第16章 串口开发与应用 337
16.1 基本概念 337
16.2 串口的参数设置 337
16.3 串口通信软件开发 338
16.3.1 串口通信函数 338
16.3.2 多线程串口通信软件设计 339
第17章 项目管理和应用程序发布 343
17.1 创建项目 343
17.2 对项目中的项进行排序 344
17.3 项目库 345
17.4 发布应用程序 345
17.4.1 生成应用程序(EXE) 346
17.4.2 生成安装程序 349
第18章 综合项目实例 351
18.1 软件工程基础 351
18.1.1 软件工程概念 351
18.1.2 软件生命周期 352
18.1.3 软件开发模型 353
18.1.4 软件需求分析 357
18.1.5 软件设计 359
18.1.6 程序编码 360
18.1.7 软件测试 362
18.1.8 软件实施和维护 363
18.2 项目设计目的 363
18.3 项目功能模块介绍 364
18.4 项目功能设计实现 366
18.4.1 滤波信号的产生 366
18.4.2 添加滤波器VI控件 367
18.4.3 双通道频谱测量 368
18.4.4 检测信号 369
18.4.5 各VI控件之间数据流的连线 371
18.4.6 各VI信号的图形显示控件 372
18.4.7 创建上下截止频率调节控件 372
18.4.8 信号掩区和边界测试输出信号的显示设置 373
18.4.9 创建截止频率变化子VI 376
18.5 发布应用程序 377
18.5.1 独立可执行程序(EXE) 377
18.5.2 安装程序 380