已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
燕山大学Labview程 序 说 明 书题目:基于Labview编程的黑白棋学院(系): 电气工程学院 年级专业: 09级医疗仪器1班 学 号: 090103040048 学生姓名: 宫喜庆 指导教师: 赵勇 目 录摘要 2一 黑白棋游戏规则3二 设计流程图4三 程序详解43.1 初始化棋盘 43.2 下棋时的流程53.3 下棋时的几个状态 63.4 几个规则的实现程序 6 3.5 显示结果 7四 主程序框图8五 Xcontrol 的外观功能9六 总结 10基于Labview编程的黑白棋摘要:虚拟仪器技术是利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用。自1986年问世以来,世界各国的功能师和科学家们都已将NI labview图形化开发工具用于产品设计周期的各个环节,从而改善了产品质量、缩短了产品投放市场的时间,并提高了产品开发和生产效率。使用集成化的模拟仪器环境与现实世界的信号相连,分析数据以获取实用信息,共享信息成果,有助于在较大范围内提高生产效率。虚拟仪器提供的各种工具能满足我们任何项目需要。本文讲解了基于labview编程的黑白棋。首先介绍了黑白棋的游戏规则,然后介绍利用labview设计的黑白棋程序流程图,之后对具体的程序进行简单的介绍。最后对学习该程序进行总结。关键词: Labview 黑白棋规则一.黑白棋游戏规则 1棋局开始时黑棋位于e4和d5,白棋位于d4和e5,如图所示。2黑方先行,双方交替下棋。 3一步合法的棋步包括:在一个空格新落下一个棋子,并且翻转对手一个或多个棋子。 4新落下的棋子与棋盘上已有的同色棋子间,对方被夹住的所有棋子都要翻转过来。可以是横着夹,竖着夹,或是斜着夹。夹住的位置上必须全部是对手的棋子,不能有空格。 5一步棋可以在数个方向上翻棋,任何被夹住的棋子都必须被翻转过来,棋手无权选择不去翻某个棋子。 6除非至少翻转了对手的一个棋子,否则就不能落子。如果一方没有合法棋步,也就是说不管他下到哪里,都不能至少翻转对手的一个棋子,那他这一轮只能弃权,而由他的对手继续落子直到他有合法棋步可下。 7如果一方至少有一步合法棋步可下,他就必须落子,不得弃权。 8棋局持续下去,直到棋盘填满或者双方都无合法棋步可下。二.设计流程图 输入对应棋子位置和颜色检测棋子落下初始化棋盘相应棋子进行反转程序停止按退出键 棋盘满子判断输赢三.程序详解 3.1初始化棋盘棋盘为8*8 的表格,初始状态如图所示: 棋盘和棋子在Labview中没有相应的控件需要自己制作,棋盘和棋子是利用Labview中的Xcontrol制作的自定义控件。棋子的属性如图 。在棋 盘中,棋子是利用一个8*8 的二维数组来显示,0代表无棋子,1代表黑棋,2代表白棋,初始化棋盘如下图3.2下棋时的流程 开始游戏时,首先该黑子下(人操作),文本框显,然后电脑下,文本框显示,人再下就显示,当没有棋子可下的时候就显示另一方下,下完在文本框中输出结果。3.3 下棋时的几个状态 下棋时的几个状态:落子,棋子翻转,棋盘满子。3.4几个规则的实现程序3.41 在落棋子时首先要检查当前棋盘所有的位置,是否有位置可下以及该下的棋子颜色,程序利用公式节点完成3.42 棋子落下后相应的棋子要进行反转,程序如下 3.5 显示结果 当棋盘满子或者双方都不能落子时,有文本框输出结果。计算结果及计算黑白棋子的数目,数目多的一方胜出。程序如下:四主程序框图 主程序是一个While循环嵌套一个事件结构。事件有四个:初始化事件,用户事件,新游戏事件,退出事件。初始化事件事件里嵌套一个条件结构进行初始化。用户事件里嵌套条件结构,有三种状态:人落子,电脑落子,计算结果输出。五 Xcontrol的外观功能 外观”功能用于定义XControl的外观。“外观”功能可通过外观VI实现。因为XControl需要“外观”功能,所以创建XControl时,LabVIEW将自动把“外观”VI添加至XControl库。“外观”VI必须是重入VI。编辑外观VI向“外观”VI添加LabVIEW输入控件和显示控件以创建XControl的前面板。默认状态下,“外观”VI包括数据、显示状态、容器状态控件和数据、显示状态和动作显示控件。这些输入控件和显示控件被隐藏,不出现在XControl的外观中。根据出现在XControl外观中的输入控件和显示控件,重新调整前面板的大小。设置“外观”VI的窗口外观属性,调整修改XControl的大小和外观。“外观”VI的程序框图可处理前面板上控件的事件以及“外观”VI本身。该程序框图包含一个内部含有一个事件结构的While循环。“外观”VI不是连续运行的VI。LabVIEW仅在VI有待处理事件时调用“外观”VI。LabVIEW调用具有当前数据、显示状态和容器状态的“外观”VI。“外观”VI将处理事件并返回更新后的数据、显示状态和执行的动作类型。容器状态簇用于提供XControl的实例信息。容器状态簇包含三个元素:显示控件?、运行模式?和引用句柄。显示控件?用于确认XControl实例是输入控件还是显示控件。运行模式?用于确认使用XControl的VI的状态为运行中还是空闲。运行模式?设为TRUE时,所属VI的状态为运行中。引用句柄是仅用于查询XControl信息的XControl实例的引用。不要用引用句柄从外观VI修改XControl实例。“外观”VI改变数据或显示状态时,应更新动作簇并通知LabVIEW上述改动。动作簇包含三个元素已更改数据、已更改模式和动作名称。已更改数据设为TRUE时“外观”VI将改变数据输出显示控件。已更改状态设为TRUE时“外观”VI将改变显示状态输出显示控件。也选用动作名称命名正在执行的动作。动作的名称在选中编辑撤消选项时出现。通常,“外观”VI对在其前面板上的控件所生成的事件作出响应,改变其数据或显示状态。“外观”VI的事件“外观”VI也对由用户交互而生成的事件作出响应。这些事件包括数据更改、显示状态更改、方向更改和执行状态更改事件。“外观”VI必须处理“数据更改”和“显示状态更改”事件以保证能正常运行。而“方向更改”和“执行状态更改”事件的处理为可选。LabVIEW调用“外观”VI处理这些事件。例如,当复制XControl时,LabVIEW将产生所有四个事件,并在XControl的新实例上调用“外观”VI。加载包含XControl的VI的前面板时,LabVIEW也会产生四个事件并调用“外观”VI。当包含XControl的VI从编辑模式变为运行模式(或相反)时,LabVIEW将产生一个“执行状态更改”事件,并调用“外观”VI响应VI执行状态的改变。选择编辑撤消或编辑重做时,LabVIEW也会调用“外观”VI。“外观”VI改变状态进行任何操作前,LabVIEW将恢复XControl的显示状态。当前显示状态将替换上一个状态。在撤消或重做动作之后,LabVIEW生成一个“显示状态改变”事件并调用“外观”VI,更新XControl。编辑每个事件分支,配置XControl响应事件的方式。要使XControl能快速响应,配置“外观”VI尽快处理事件并结束运行。不要在While循环的事件结构中使用“等待”函数。 总结通过对Labview的学习,我发现虚拟仪器有许多传统仪器无法比拟的优点。虚
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年基本面分析师招聘面试题库及参考答案
- 2025年护理管理研究员招聘面试题库及参考答案
- 2025年操作研究分析师招聘面试题库及参考答案
- 2025年军事专家招聘面试题库及参考答案
- 2025年非营利机构经理招聘面试题库及参考答案
- 2025年现场施工专员招聘面试题库及参考答案
- 2025年公关活动专员招聘面试参考题库及答案
- 2025年医疗健康经理招聘面试题库及参考答案
- 2025年企业资源计划专员招聘面试参考题库及答案
- 2025年流程优化顾问招聘面试参考题库及答案
- 唐代诗人李白生平简介及诗词鉴赏课件教学模板
- 中国旅游客源国概况全套课件
- 消除艾滋病、梅毒和乙肝母婴传播项目培训
- 煤层气开发煤层气开采工程
- 供应链金融业务管理办法(邮政储蓄)
- 爬电距离与电气间隙
- 火车过桥问题新版课件
- 《锂电池用辅助材料 第1部分 金属极耳》团体标准征求意见稿
- YS/T 886-2013纯钛型材
- 简单的轮胎供货合同范本
- DB34T3587-2020 《城镇排水管道检测与修复技术规程》
评论
0/150
提交评论