东南大学微机接口与实验课程设计乒乓球比赛实验报告

上传人:第*** 文档编号:56888801 上传时间:2018-10-16 格式:PDF 页数:32 大小:628.50KB
返回 下载 相关 举报
东南大学微机接口与实验课程设计乒乓球比赛实验报告_第1页
第1页 / 共32页
东南大学微机接口与实验课程设计乒乓球比赛实验报告_第2页
第2页 / 共32页
东南大学微机接口与实验课程设计乒乓球比赛实验报告_第3页
第3页 / 共32页
东南大学微机接口与实验课程设计乒乓球比赛实验报告_第4页
第4页 / 共32页
东南大学微机接口与实验课程设计乒乓球比赛实验报告_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《东南大学微机接口与实验课程设计乒乓球比赛实验报告》由会员分享,可在线阅读,更多相关《东南大学微机接口与实验课程设计乒乓球比赛实验报告(32页珍藏版)》请在金锄头文库上搜索。

1、乒乓球比赛实验报告 学号 0 东南大学东南大学 乒乓球比赛乒乓球比赛 微机课程设计微机课程设计实验实验报告报告 姓姓 名:名: 学学 号:号: 专专 业:业: 吴健雄学院 实实 验验 室:室: 实验实验时间:时间: 2013 年年 00 月月 00 日日 报告时间:报告时间: 2013 年年 00 月月 00 日日 评定成绩:评定成绩: 审阅教师:审阅教师: 乒乓球比赛实验报告 学号 1 目 录 一、实验目的与内容2 二、总方案设计及原理3 (一)比赛规则 3 (二)面板设计 3 (三)方案流程图 3 三、方案实现与测试5 (一)各模块硬件设计 5 (二)整体硬件连线图6 (三)系统框图 7

2、(四)主程序设计 7 (1)主程序流程图7 (2)主要程序片段9 (五)子程序设计 11 (1)延时子程序 11 (2)屏幕显示子程序 12 (3)数码管扫描比分子程序13 (4)移动速度选择子程序 16 (5)规定等待时间选择子程序 17 四、程序设计中遇到的问题及解决方法18 五、分析与总结18 附录19 乒乓球比赛实验报告 学号 2 一一. . 实验实验目的与目的与内容内容 1)基本要求 用 8 个 LED 发光管(红黄绿)的来回滚动显示来模拟打乒乓球时乒乓球在两边球台上的来回运动。比赛 双方用按钮/开关(双方各用 1 个按钮/开关)来模拟发球与接球,即发球方按动其控制的按钮/开关,球从

3、 发球方一侧向另一方运动(LED 发光管从发球方到对方逐个点亮,滚动显示),当球运动至接球方时,接球 方立即按动其控制的按钮/开关, “击球”使球“弹回”发球方一侧,如此周而复始,直至在规定的击球时 间内有一方未能完成击球动作, 从而对方得一分, 然后继续比赛。 比赛规则可参照一般的乒乓球比赛规则。 要求: (1) 球以每 0.5 秒滚过 1 个 LED 的速度移动; (2) 回球需在球到达后的 0.5 秒内进行(按下按钮),否则按失球计; (3) 球未到达提前按下按钮按失球处理,不起回球作用; (4) 在 PC 机上显示比赛过程,同时用 2 个八段数码管显示比分(按 10 进制计数,初始值

4、0:0,可自行 设计显示及规则,可简化为 0-9,也可为 0-99); (5) 要求精确计时。 2)设计提示 球到达接球方后,立即读接球方的按钮状态,若未按则有效(若已按下则按失球计),并开始 0.5 秒的 计时,在这个 0.5 秒内不断读接球方按钮状态,直到按下代表“击球”动作。 3)进一步设计要求 (1)通过拨动开关控制球的移动速度,即可设置每个 LED 点亮时间(0.5 秒、0.3 秒、0.2 秒) ; (2)通过拨动开关控制允许击球的时间(0.3 秒、0.2 秒、0.1 秒) ; (3)用 88 点阵配合比赛过程,显示比分; (4) 用一个开关控制进入智能模式, 智能模式要求: 球移动

5、速度取决于击球时间, 球移动速度(每个 LED 点 亮时间)在 0.20.5 秒内可变,具体取决于球到达接球方后击球所花的时间 00.5 秒,如花费的时间短则 回球后球移动速度快,反之回球后移动速度慢,如下表所示。 球移动速度与击球时间对应表 球到达至击球时间 00.2 秒 0.20.3 秒 0.30.4 秒 0.40.5 秒 球移动速度(灯点亮时间) 0.2 秒 0.3 秒 0.4 秒 0.5 秒 乒乓球比赛实验报告 学号 3 二二. . 总方案设计及原理总方案设计及原理 (一)比赛规则 对题目进行理解和深化后,将乒乓球比赛的规则规定如下: (1) 使用两个开关 K0、K7 模拟左方和右方的

6、发球和接球,拨向 0 表示不做任何动作,拨向 1 则表示接球和发球。 (2) 球未到达提前将开关拨向 1 则按失球处理,不起回球作用。 (3) 回球需在球到达后的规定时间内进行(按下按钮),否则按失球计。接球的规定时间默认为 0.5 秒,但是可以通过相应开关 K4/K5 选择其它规定时间,如 0.3 秒、0.2 秒和 0.1 秒。 (4) 球的移动速度默认为 0.5 秒,但是可以通过相应开关 K2/K3 选择其它速度,如 0.3 秒、0.2 秒。 (5) 该比赛采取 9 分制,即先得到 9 分的选手获胜,即一场比赛结束。 (6) 每次发球由上一次失分方执行(输方发球) 。 (7) 在 PC 机

7、上显示比赛过程,同时用两个八段数码管显示比分。 (8) 使用 K6 控制是否进入智能模式 (二)面板设计 实验方案的面板设计如下:(三)方案流程图K7 K6 K5 K4 K3 K2 K1 K0 控制右边选手的发球和接球 控制左边选手的发球和接球 8 盏 灯显 示 乒乓 球 的移动 共同调节控制球的移动速度 共同调节控制接球的规定时间 数码管显示比赛分数 PC 显示比赛进程 乒乓球比赛实验报告 学号 4 N N Y N Y Y N N 开 始 显示 “比赛开始” 显示“请右边队员发球” 右 边 是 否 发 球 (K0 是否已拨) Y N 显示“请左边队员接球” 球向左移动一次,并判断移动 速度的

8、开关状态并做出改变 是否到达最左边 Y N 是否提前接球 (是否拨K7) 判断接球规定时间的开关状态并做出改变。 并在规 定时间内监测是否接到球(K7 是否已拨) Y 显示“请右边队员接球” 左边第二个灯亮并开始向右移球向右移动一次,并判断移动 速度的开关状态并做出改变 是否到达最右边 Y 左边失球 右边得一分 N 数码管显 示比分, 并 判断得分 是否满 9 显示 “比 赛结束” 显示“请左边 队员发球” 左 边 是 否 发 球 (K7 是否已拨) 退出比赛 结束 乒乓球比赛实验报告 学号 5 三三. . 方案实现与测试方案实现与测试 (一)各模块硬件设计 通过分析,确定需要用到芯片 825

9、5 监测开关状态、输出灯的动态流向和输出数码管的段选。需要用到芯片 8253 精确计时。需要芯片 74LS273 用于位选。 (1)8255 8255 是实现并行输入输出功能的芯片,对于流水灯和数码管显示有很好的实现效果。8255 有三个口供选择,我将其设定为方式 0,A、B 口输出、C 口输入,C 口对应的 PC0PC7(除 PC1、PC6 外)分别与开关 K0K7(除 K1、K6 外)相对应,用于监测左方和右方的发球与接球、改变灯移动时间间隔和改变规定的等待时间。 A口对应的PA0PA7与LED灯L0L7相连接, 通过A口并行输出控制灯的流动。 B口对应的PB0PB7与八段数码管的 ah

10、相对应,通过 B 口并行输出控制数码管断码的选择。 (2)8253 8253 用于精确定时,由于用于定时器要定时到 0.5 秒、0.3 秒、0.2 秒和 0.1 秒,又由于最大初始值为 65536,所以需要计数器通道 0 和 1 级联使用。GATE0、GATE1 都接 5V 高电平,CLK0 输入接 1MHZ 脉冲信号,计数器通道 0 输出的 OUT0 与计数器通道 1 的输入 CLK1 相连接,最终的通道 1 的输出 OUT1 与 8255 的PC1 口相连接,监测是否计数已满,计数器通道 0 采用计数方式 3,计数器通道 1 采用计数方式 2。 (3)74LS273 由于 8255 的口都

11、被占用了,所以要使用 74LS273 对数码管的位选进行选择。数码管的显示在比赛过程中一直显示,两个数码管的显示要用动态显示,即通过位选,使数码管一位一位地显示,由于显示的速度过快,则肉眼看到觉得两个数码管是一起亮的。74LS273 的输出 Q1 接位选的 S0,输出 Q2 接位选的 S1,而 74LS273 的输入接实验箱的 D0、D1 的数据输出。但是不能一直对其进行位选,所以应该将数码管显示程序多放在整个程序当中,使得数码管看上去在整个比赛过程中一直亮着。 N Y N Y 是否提前接球 (是否拨K0) 判断接球规定时间的开关状态并做出改变。 并在规 定时间内监测是否接到球(K0 是否已拨

12、) Y Y 右边失球 左边得一分 N 数码管显 示比分, 并 判断得分 是否满 9 乒乓球比赛实验报告 学号 6 (二)整体硬件连线图 乒乓球比赛实验报告 学号 7 (三)系统框图 (四)主程序设计 (1)主程序流程图 Out1 并行输出流水灯状态 8255 并行输入开关状态 PC1 并行输出数码管断码 流水灯 开关(K1 除外) 数码管 初始值 8253 计数 74LS273 数码管位选 位选 数值 乒乓球比赛实验报告 学号 8 Y Y N N Y Y N N N N Y N Y 开 始 初始化 8255,读取开关设置 显示欢迎信息 显示 “ Please Serve the Ball” 调

13、用比分扫描子程序 8255C 口输入数据 最右边是否为 1 显示“ please Get Ready.” 8255A 口输出 01H, CL=8 左移一位,A 口输出,调用 比分扫描子程序,CL 减一 调用比分扫描子程序、延时子程序 CL=1 8255C 口输入最高位是否为 1 调用等待响应时间子程序 调用扫描比分子程序 8255C 口输入最高位是否为 1 8255C 口输入右边第二位是否为 0 8255A口 输出 00H, 右边比分 加一 调用扫描比 分子程序 显示“ get Goal!” 调用屏幕显示子 程序、扫描子程序 得分是否达到 9 显示游戏结束 显示“ win!” 调用扫描比 分子程序 退 出 显示请左边准备 8255A 口 输 出 01H,CL=7 乒乓球比赛实验报告 学号 9 (2)主要程序片段 、8255 设置控制字 InitializeFor8255: MOV DX,IO8255 ;给 8255 控制字 MOV AL,89H ;方式 0,A、B 输出,C 口输入 OUT DX,AL 、8255C 口监测开关状态及计数器计数状态 A:是否发球(右方) : WaitFor_Right_ToServeTheBall: Y N Y Y N N N N Y N Y 调用比分扫描子程序 8255C

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号