- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六讲 补充1--常用设计技巧
常用设计技巧 A. 单循环架构 A. 单循环架构 A. 单循环架构 A. 单循环架构 A. 单循环架构 A. 单循环架构 A. 单循环架构 B. 并行 B. 并行 B. 并行 C.多循环架构 C.多循环架构 C.多循环架构 C.多循环架构 C.多循环架构 C.多循环架构 D.为设计模式设置定时 D.为设计模式设置定时 D.为设计模式设置定时 D.为设计模式设置定时 D.为设计模式设置定时 D.为设计模式设置定时 测验 测验答案 补充第六讲 常用设计技巧 * 用LabVIEW 或其它编程语言时,以一定的编程技巧和架构为基础,您可开发出更好的程序。 A. 单循环架构 B. 并行 C. 多循环架构 D. 为设计模式设置定时 1.简单VI 设计模式 如果只是实现计算功能或者实验室的测量工作,无需使用复杂的架构。 只需要单个VI 程序就可以完成测量、计算、显示结果或者将结果记录到磁盘上。 简单VI 设计模式通常不需要用户输入特别的起始或者停止命令。 2.通用VI 设计模式 通用VI 设计模式有三个主要部分。 每个部分中都可以包含基于其它设计模式的代码。 三个主要部分如下: 启动:该部分初始化硬件、从文件中读取配置信息或者提示用户数据文件的位置。 主应用程序:该部分至少包括一个循环,直到用户决定退出程序或者由于其它原因(如完成I/O 操作)使得程序终止时才停止执行循环。 结束:该部分关闭文件、将配置信息写入磁盘或者将I/O 重置为默认状态。 3.状态机设计模式 状态机设计模式实际上是对常规设计模式的修改。 通常它也包括启动和结束部分。 但是,主应用程序部分包括一个嵌入于循环中的条件结构。 该架构允许循环依据不同的条件每次执行不同的代码。 每一个条件分支定义一种状态,因此该架构叫做状态机。 该设计模式适用于能划分为若干简单任务的VI,如用户界面VI。 LabVIEW 的状态机包括一个While 循环、一个条件结构和一个移位寄存器。 状态机的每一个状态对应条件结构的一个条件分支。 在相应的条件分支中放置该状态下应该执行的VI 和代码。 移位寄存器中存储了应在下一次循环时执行的那个状态。 并行是同时执行多个任务的一种方法。 并行任务编程的难点在于,如何在多个循环之间传递数据而不造成数据依赖。 例如,如果通过连线传递数据,循环就不具备并行性了。 方法1 (错误的) 方法2 (错误的) 1.并行循环设计模式 某些应用程序要求同时响应并运行多个任务。 设计这类应用程序主体部分的一种方法就是为每一个任务分配一个不同的循环。 例如,前面板上的每一个按钮和每一种其它任务(如菜单选择、I/O 触发等)都可能被分配一个不同的循环。 2.主/ 从设计模式 主/ 从设计模式包括多个并行循环。 每个循环以不同的速率执行任务。 一个循环作为主循环,其它循环作为从循环。 主循环控制所有的从循环,并且使用通信技术与它们进行通信。 3.生产者/ 消费者设计模式 生产者/ 消费者设计模式基于主/ 从设计模式,且提高了不同速率的多个循环之间的数据共享能力。 与主/ 从设计模式相似,生产者/ 消费者设计模式将生产和消费数据速度不同的任务分开处理。 生产者/ 消费者设计模式中的并行循环分为两类-生产数据的循环、消费数据的循环。 数据队列可在循环之间传递数据。 数据队列也可在生产者循环和消费者循环之间缓冲数据。 本节讨论两种定时方法-执行定时和软件控制定时。 执行定时方法使用定时函数以留给处理器完成其它任务的时间。 软件控制定时方法针对实际操作设置一个固定的时间长度,该操作必须在该固定时间内完成执行。 1.执行定时 既可以显式指定设计模式的定时时间,也可以根据VI 内发生的事件来设置定时。 显式定时是通过给设计模式添加一个函数(如“等待下一个整数倍毫秒”函数)来明确地指定允许处理器处理任务的时间。 对基于事件的定时而言,设计模式在继续执行之前需等待事件的发生,且允许在其等待的同时处理器执行任务。 主/ 从设计模式、生产者/ 消费者设计模式和状态机这类设计模式都应使用显式定时。 这些设计模式执行过程中都会进行某种轮询操作。 2.软件控制定时 许多应用程序要求在一段特定的时间内执行某一个操作。 假设需要采用状态机设计模式实现一个温度数据采集系统。 如果要求系统持续采集数据5 分钟,则必须在5 分钟内使其保持在采集状态。 但在该段时间内不可以处理其它用户界面操作(如停止VI)。 为了处理这些用户界面操作,必须设置定时使得VI 可以连续运行一段指定时间。 实现定时即在监控实时定时器的同时保持应用程序仍在运行。 1. 软件控制定时允许用处理器时间完成其它任务。 a. 对 b. 错 2. 执行定时方法允许用处理器时间完成其它任务。 a. 对 b. 错 3. 可以使用连线在并行循环间传递数据。
文档评论(0)