Lesson 8 - Variables
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Leabharlann Baidu
用户组: ni.com/usergroups 联盟: ni.com/alliance 出版物: ni.com/reference/books/ 练习!
ni.com/china/training
初学者
中级用户
高级用户
LabVIEW核心教程(一)
LabVIEW核心教程(三)
LabVIEW中的软件工程管理
对于并行执行多个任务并在任务间共享数据的 程序来说,竞争状态为常见的问题。
ni.com/china/training
“Value”变量的最终值等于多少?
四种可能的结果:
• • • • Value = (Value × 5) +2 Value = (Value + 2) × 5 Value = Value × 5 Value = Value +2
ni.com/china/training
课外学习
• ni.com/support
− 通过产品手册、知识库、范例代码、技术指南、教程、 应用笔记和技术论坛,获取更多信息。 − 技术支持。
• NI社区: ni.com/community/
− 在讨论社区咨询问题和分享答案。 − 交换代码和编程思路。
• • • •
ni.com/china/training
D. 局部变量
何时使用局部变量 局部变量和布尔机械动作 如何创建局部变量
ni.com/china/training
局部变量
使用局部变量在单个VI中传递数据。
ni.com/china/training
局部变量
使用局部变量更改前面板控件的值。
ni.com/china/training
使用开关机械动作
• 具有关联局部变量 的布尔控件必须使 用开关机械动作。 • 布尔触发动作与局 部变量不兼容。
ni.com/china/training
创建局部变量
创建和使用局部变量。
<Exercises>\LabVIEW Core 1\Demonstrations\Local Variables
演示
练习8-1: 气象站UI和局部变量VI
使用局部变量对控件进行读写操作。 目标
练习8-1: 气象站UI和局部变量VI
在此应用中,局部变量提供什么功能? 讨论
E. 竞争状态
定义 如何避免竞争状态 控制共享资源
ni.com/china/training
竞争状态
竞争状态-事件定时或任务安排可能 会无意中影响到输出值或数据值
• 在线自学课程:全天均可进行、预先录制的视频培训 模块、交互测试及疑难练习和解答。 • 印刷课程材料:一系列用于自学的指导教材和工具包
ni.com/china/training
NI LabVIEW技能指南
ni.com/labview/skills-guide/zhs • 选择所需技能 • 查找课程和相关资源学习所需技能
C. 变量
ni.com/china/training
变量
变量-程序框图中的元素,通过变 量可在其他位置访问或存储数据
变量类型: • 局部变量-将数据存储在前面板输入控件和显示 控件中。 • 全局变量-将数据存储在多个VI可访问的特殊数 据库中。 • 功能全局变量-将数据存储在While循环移位寄存 器中。 • 共享变量-在通过网络连接的分布式任务间传递 数据。
2. 控制资源时,下列哪种写入方和读取方的组合可降低 出现竞争状态的可能? a) 一个写入方,一个读取方 b) 一个写入方,多个读取方 c) 多个写入方,一个读取方 d) 多个写入方,多个读取方
ni.com/china/training
继续学习LabVIEW
• 面授课程
− LabVIEW核心教程(二):介绍多循环架构、属性节点和 创建可执行程序。 − LabVIEW Real-Time 1 − LabVIEW FPGA − LabVIEW仪器控制 − 数据采集和信号调理
ni.com/china/training
总结-测验
2. 控制资源时,下列哪种写入方和读取方的组合可降低 出现竞争状态的可能? a) 一个写入方,一个读取方 b) 一个写入方,多个读取方 c) 多个写入方,一个读取方 d) 多个写入方,多个读取方
ni.com/china/training
总结-测验答案
ni.com/china/training
控制共享资源
ni.com/china/training
总结-测验
1. 应在VI中尽可能多的使用变量。 a) 对 b) 错
ni.com/china/training
总结-测验答案
1. 应在VI中尽可能多的使用变量。 a) 对 b) 错 仅在需要时使用变量。尽可能使用连线传输数据。
第 8课 通过变量解决数据流问题
主题
A. B. C. D. E. 并行循环间通信 写入输入控件和读取显示控件 变量 局部变量 竞争状态
ni.com/china/training
A. 并行循环间通信
ni.com/china/training
并行循环间通信
双图表范例:同时执行多个任务。
ni.com/china/training
LabVIEW核心教程(二)
LabVIEW面向对象编程的 系统设计
LabVIEW高级架构
认证
LabVIEW助理开发工程师考 试 LabVIEW开发工程师考试 LabVIEW程序架构师考试
ni.com/china/training
谢谢!
请完成调查表并取回您的课程CD。
ni.com/china/training
如何处理下列数据流问题?
− 使用配置文件初始化前面板控件的值。 − 复制“Ship To”地址至“Bill To”地址。 − 初始化代码中后续待写入的显示控件。 − 在条件结构的两个分支内写入显示控件,而不是写入 全部条件分支。
有时需要写入输入控件或读取显示控件。
ni.com/china/training
ni.com/china/training
竞争状态
• 竞争状态的识别和调试非常难。 • 通常带有竞争状态的代码即使在数千次测试中均 返回相同的结果,但仍有在某次测试中返回不同 的结果的可能性。 • 避免竞争状态的方法:
− 控制共享资源。
• 一个写入方,多个读取方。
− 合理安排指令的先后顺序。 − 减少使用变量。
在下列范例中,如何中止循环?
在并行循环之间传递数据是一个设计难点。
ni.com/china/training
在下列范例中,如何中止循环?
通过连线无法在并行循环间传递数据。
ni.com/china/training
B. 写入输入控件和读取显示控件
ni.com/china/training
写入输入控件和读取显示控件
用户组: ni.com/usergroups 联盟: ni.com/alliance 出版物: ni.com/reference/books/ 练习!
ni.com/china/training
初学者
中级用户
高级用户
LabVIEW核心教程(一)
LabVIEW核心教程(三)
LabVIEW中的软件工程管理
对于并行执行多个任务并在任务间共享数据的 程序来说,竞争状态为常见的问题。
ni.com/china/training
“Value”变量的最终值等于多少?
四种可能的结果:
• • • • Value = (Value × 5) +2 Value = (Value + 2) × 5 Value = Value × 5 Value = Value +2
ni.com/china/training
课外学习
• ni.com/support
− 通过产品手册、知识库、范例代码、技术指南、教程、 应用笔记和技术论坛,获取更多信息。 − 技术支持。
• NI社区: ni.com/community/
− 在讨论社区咨询问题和分享答案。 − 交换代码和编程思路。
• • • •
ni.com/china/training
D. 局部变量
何时使用局部变量 局部变量和布尔机械动作 如何创建局部变量
ni.com/china/training
局部变量
使用局部变量在单个VI中传递数据。
ni.com/china/training
局部变量
使用局部变量更改前面板控件的值。
ni.com/china/training
使用开关机械动作
• 具有关联局部变量 的布尔控件必须使 用开关机械动作。 • 布尔触发动作与局 部变量不兼容。
ni.com/china/training
创建局部变量
创建和使用局部变量。
<Exercises>\LabVIEW Core 1\Demonstrations\Local Variables
演示
练习8-1: 气象站UI和局部变量VI
使用局部变量对控件进行读写操作。 目标
练习8-1: 气象站UI和局部变量VI
在此应用中,局部变量提供什么功能? 讨论
E. 竞争状态
定义 如何避免竞争状态 控制共享资源
ni.com/china/training
竞争状态
竞争状态-事件定时或任务安排可能 会无意中影响到输出值或数据值
• 在线自学课程:全天均可进行、预先录制的视频培训 模块、交互测试及疑难练习和解答。 • 印刷课程材料:一系列用于自学的指导教材和工具包
ni.com/china/training
NI LabVIEW技能指南
ni.com/labview/skills-guide/zhs • 选择所需技能 • 查找课程和相关资源学习所需技能
C. 变量
ni.com/china/training
变量
变量-程序框图中的元素,通过变 量可在其他位置访问或存储数据
变量类型: • 局部变量-将数据存储在前面板输入控件和显示 控件中。 • 全局变量-将数据存储在多个VI可访问的特殊数 据库中。 • 功能全局变量-将数据存储在While循环移位寄存 器中。 • 共享变量-在通过网络连接的分布式任务间传递 数据。
2. 控制资源时,下列哪种写入方和读取方的组合可降低 出现竞争状态的可能? a) 一个写入方,一个读取方 b) 一个写入方,多个读取方 c) 多个写入方,一个读取方 d) 多个写入方,多个读取方
ni.com/china/training
继续学习LabVIEW
• 面授课程
− LabVIEW核心教程(二):介绍多循环架构、属性节点和 创建可执行程序。 − LabVIEW Real-Time 1 − LabVIEW FPGA − LabVIEW仪器控制 − 数据采集和信号调理
ni.com/china/training
总结-测验
2. 控制资源时,下列哪种写入方和读取方的组合可降低 出现竞争状态的可能? a) 一个写入方,一个读取方 b) 一个写入方,多个读取方 c) 多个写入方,一个读取方 d) 多个写入方,多个读取方
ni.com/china/training
总结-测验答案
ni.com/china/training
控制共享资源
ni.com/china/training
总结-测验
1. 应在VI中尽可能多的使用变量。 a) 对 b) 错
ni.com/china/training
总结-测验答案
1. 应在VI中尽可能多的使用变量。 a) 对 b) 错 仅在需要时使用变量。尽可能使用连线传输数据。
第 8课 通过变量解决数据流问题
主题
A. B. C. D. E. 并行循环间通信 写入输入控件和读取显示控件 变量 局部变量 竞争状态
ni.com/china/training
A. 并行循环间通信
ni.com/china/training
并行循环间通信
双图表范例:同时执行多个任务。
ni.com/china/training
LabVIEW核心教程(二)
LabVIEW面向对象编程的 系统设计
LabVIEW高级架构
认证
LabVIEW助理开发工程师考 试 LabVIEW开发工程师考试 LabVIEW程序架构师考试
ni.com/china/training
谢谢!
请完成调查表并取回您的课程CD。
ni.com/china/training
如何处理下列数据流问题?
− 使用配置文件初始化前面板控件的值。 − 复制“Ship To”地址至“Bill To”地址。 − 初始化代码中后续待写入的显示控件。 − 在条件结构的两个分支内写入显示控件,而不是写入 全部条件分支。
有时需要写入输入控件或读取显示控件。
ni.com/china/training
ni.com/china/training
竞争状态
• 竞争状态的识别和调试非常难。 • 通常带有竞争状态的代码即使在数千次测试中均 返回相同的结果,但仍有在某次测试中返回不同 的结果的可能性。 • 避免竞争状态的方法:
− 控制共享资源。
• 一个写入方,多个读取方。
− 合理安排指令的先后顺序。 − 减少使用变量。
在下列范例中,如何中止循环?
在并行循环之间传递数据是一个设计难点。
ni.com/china/training
在下列范例中,如何中止循环?
通过连线无法在并行循环间传递数据。
ni.com/china/training
B. 写入输入控件和读取显示控件
ni.com/china/training
写入输入控件和读取显示控件