燕 山 大 学
EDA 课程设计报告书
题 目:
乒 乓 球 游 戏 机
姓 名:
周 馨
班 级: 14 级计算机科学与技术 5 班
学 号:
140104010134
成 绩:
一、设计题目及要求
1.1 设计题目
乒乓球游戏机
1.2 设计要求
1.用 8 个发光二极管表示球,用两个按钮分别表示甲乙两个球员球拍;
2.一方发球后,球以固定速度向另一方运动(发光二极管依次点亮),当球
达到最后一个发光二极管时,对方击球(按下按钮)球将向相反方向运动,在
其他时候击球视为犯规,给对方加 1 分;都犯规,各自加 1 分;
3.甲、乙各有一数码管计分;
4.裁判有一个按钮,是系统初始化,每次得分后, 按下一次。
二、设计过程及内容
2.1 总体设计
(1)总体构成
该乒乓球游戏机总模块为 pingpongballs,主要由五个模块构成,分别为
ledMove 模块、pingpongControl 模块、playerChange 模块、playerScore 模块、
scoreScan 模块。
2
(2)子模块功能及其实现
①ledMove 模块
实现了显示乒乓球的运动轨迹的功能;
由双向移位寄存器 74198 和门电路实现。
②pingpongControl 模块
实现了乒乓球被击球后的反向运动(往返运动)的功能;
由两个 D 触发器和门电路实现。
③playerChange 模块
实现了裁判按下两次按键后换发球方的功能;
由双 D 触发器 7474 和一个 D 触发器实现。
④playerScore 模块
实现了球员的计分的功能;
由两片十进制计数器 74160、D 触发器和门电路实现。
⑤scoreScan
模块实现了扫描显示双方比分的功能;
由十一进制计数器 74161、4 片 8 选 1 数据选择器 74151、七段译码
器 7449 和和门电路实现。
(3)总电路图及仿真结果
①总电路图
3
图 1
pingpongballs 模块电路图
4
②时序仿真结果
图 2 总电路图时序仿真波形图(上)
图 3 总电路图时序仿真波形图(下)
在 Quuartus 上时序仿真和功能仿真时 End time 设置的是 60us,CLK 信号设置的是
1us/周期,CLK0 设置的是 200ns/周期。实际实验时,通过调试,CLK 时钟频率设置为 5HZ,
CLK0 设置为 1MHZ。
仿真说明:
输出端 LED1~LED8 的高电平脉冲表示乒乓球的运动轨迹,球员 PLAYERA 发球使球向
PLAYERB 球员运动(右移);PLAYERB 击球并使球返回 PLAYERA 球员(左移),此时计数器不产
5
生加分;PLAYERA 没有接住球,给 PLAYERB 加一分,反之,给 PLAYERA 加一分。
2.2 主要模块设计
①ledMove 模块
图 4 ledMove 电路图
图 5 ledMove 模块时序仿真结果图
电路说明:该模块的功能由双向移位寄存器 74198 和门电路实现。8
6
个输出端的接 LED 灯,灯的亮灭代表乒乓球运动的轨迹。输入端 TURNLEFT
为高电平(TURNRIGHT 为低电平)和 TURNRIGHT 为高电平(TURNLEFT 为低
电平)表示小球的左移和右移,TURNRIGHT、TURNLEFT 同时为高电平时表
示球员甲(SET 为低电平)或球员乙(SET 为高电平)为发球方。CLK 接时
钟信号表控制乒乓球移动速度的大小,周期越小、频率越大移动越快,在
仿真时设置为 1us/周期。
仿真说明:SET 低电平,TURNRIGHT、TURNLEFT 高电平,第一个灯亮其
他灯不亮,TURNLEFT 变为低电平,TURNRIGHT 保持高电平,led 灯从第一
个开始右移,led 移到第 8 个灯的时候,TURNLEFT 变为高电平,TURNRIGHT
变为低电平,led 左移。
②pingpongControl 模块
图 6 pingpongControl 模块电路图
图 7 pingpongControl 模块时序仿真波形图
模块说明:该模块的功能由两个 D 触发器和门电路实现。输入端
PLAYERA、PLAYERB 分别代表甲、乙两位球员,输入端 JUDGE 代表裁判。当
输入端 LED1 为高电平时代表乒乓球到达甲处,甲按下按键给一个高电平脉
7
冲,通过此模块使 TURNRIGHT 为高电平,TURNLEFT 为低电平,乒乓球向相
反方向移动,过早或过晚击球不会通过与门产生高电平,乒乓球不会反向
移动。当裁判按下按钮后,D 触发器处于置数状态,发球方的第一个 LED
灯点亮。
仿真说明:当输入端 LED1 和输入端 PLAYERA 为高电平时,输出端
TURNRIGHT 为高电平,乒乓球右移;当输入端 LED8 和输入端 PLAYERB 为高
电平时,输出端 TURNLEFT 为高电平,乒乓球左移。输入端 JUDGE 为高电平
时,TURNLEFT、TURNRIGHT 都为高电平,发球方的第一个 LED 灯点亮。
③playerChange 模块
图 8 playerChange 模块电路图
图 9 playerChange 模块时序仿真波形图
电路说明:该模块的功能由双 D 触发器 7474 和一个 D 触发器实现。7474
功能相当于把时钟信号 JUDGE 四分频,再通过 D 触发器实现每两次换一次
发球方的功能。
仿真说明:当裁判按下两次按钮时,换一次发球方。
8