乒乓球游戏电路课程设计最终完成版

合集下载

电子乒乓球课程设计

电子乒乓球课程设计

电子乒乓球课程设计一、课程目标知识目标:1. 学生能够理解电子乒乓球的基本原理,掌握相关电子元件的功能和使用方法。

2. 学生能够描述电子乒乓球的电路连接和工作过程。

3. 学生能够解释电子乒乓球游戏中涉及到的物理现象,如电路、电磁感应等。

技能目标:1. 学生能够运用所学知识,独立完成电子乒乓球的搭建和调试。

2. 学生能够运用编程思维,设计并实现简单的电子乒乓球游戏功能。

3. 学生能够通过团队协作,解决电子乒乓球制作过程中遇到的问题。

情感态度价值观目标:1. 学生能够对电子技术产生兴趣,培养创新意识和探索精神。

2. 学生能够在团队协作中,学会沟通、分享和承担责任。

3. 学生能够在电子乒乓球制作过程中,体会到科技与生活的紧密联系,增强环保意识和实践能力。

课程性质:本课程为实践性较强的综合课程,结合电子技术、物理知识和编程思维,培养学生的动手能力和创新能力。

学生特点:六年级学生具备一定的物理知识和电子技术基础,对动手实践和团队协作有较高的兴趣。

教学要求:教师需引导学生主动探索、动手实践,注重培养学生的创新思维和问题解决能力。

在教学过程中,关注学生的个体差异,提供个性化的指导和支持。

通过课程学习,使学生能够将所学知识应用于实际情境,提高综合素养。

二、教学内容本课程依据课程目标,结合教材内容,制定以下教学内容:1. 电子元件认知:介绍常用电子元件如电阻、电容、二极管、三极管等的功能和用途。

2. 电路原理:讲解电路的基本连接方式,分析简单电路的工作原理。

3. 电磁感应:引导学生探究电磁感应现象,理解电磁感应在实际应用中的作用。

4. 编程思维:学习基础编程知识,运用编程思维设计电子游戏功能。

5. 电子乒乓球制作:按照以下步骤进行制作:a. 设计电路图,搭建电路。

b. 编写程序,实现游戏功能。

c. 调试电路,优化游戏体验。

6. 团队协作与沟通:学生在制作过程中,进行有效沟通,共同解决问题。

教学大纲安排如下:第一课时:电子元件认知,电路原理介绍。

数电课设-乒乓球游戏机

数电课设-乒乓球游戏机

数电课设-乒乓球游戏机乒乓球游戏机数电课设一、课设目的本课设的目的是通过设计并实现一个乒乓球游戏机的电子电路模型,来巩固和应用学生在数字电路实验课上所学习到的知识,提高他们的电子电路设计与实现能力。

二、设计思路乒乓球游戏机是一种非常经典的游戏机,它的原理很简单,就是通过两个滑块控制球的移动方向,利用球拍击球来达到得分的目的。

基于这个原理,我们可以设计一个乒乓球游戏机的电子电路模型。

具体的设计思路如下:1、显示系统:使用LED点阵来显示游戏界面。

设计一个4*4的LED 点阵,通过控制LED点阵的亮灭来显示游戏界面的各个元素,如球、滑块等。

2、控制系统:使用两个按键来控制滑块的上下移动。

通过按键的触发来改变滑块的位置,从而实现对球的控制。

3、碰撞检测:使用逻辑门电路来判断球与滑块之间是否发生碰撞。

当球与滑块相碰时,逻辑门输出高电平信号,触发得分操作。

4、计分系统:使用计数器电路来实现游戏的计分功能。

当球与滑块相碰时,计数器加一,同时更新LED点阵上的分数显示。

三、电路实现1、显示系统:设计一个4*4的LED点阵电路模型,使用74HC595移位寄存器来驱动LED点阵。

将74HC595的输出接入到LED点阵的行线上,通过移位寄存器的控制信号来控制LED点阵的亮灭。

通过连续地改变LED 点阵的亮灭状态,可以显示游戏界面上的各个元素。

2、控制系统:使用两个按键作为滑块的上下移动控制信号。

当按键按下时,滑块的位置向相应方向移动。

可以使用74HC165移位寄存器来实现按键输入的检测和转换。

3、碰撞检测:使用逻辑门电路来判断球与滑块之间是否发生碰撞。

可以使用与门和反相器来实现碰撞检测。

当球与滑块相碰时,逻辑门输出高电平信号。

4、计分系统:使用计数器电路来实现游戏的计分功能。

可以使用74HC191或74HC163等计数器芯片来实现,通过设置计数器的初始值和计数模式,来实现游戏的计分功能。

四、功能实现乒乓球游戏机的基本功能有:1、选择游戏模式功能:可以通过添加一个模式选择开关,来实现选择不同的游戏难度。

电子技术课程设计乒乓球游戏机

电子技术课程设计乒乓球游戏机

电子技术课程设计乒乓球游戏机
包括题目、任务要求、系统设计、操作用户界面设计、单片机程序设计、程序流程图、实验结果等部分。

二、任务要求
1.硬件系统
(1)硬件系统的组成:硬件主要由9个8*8的LED显示屏,2个按键盘,1个电源、1个继电器等组成;
(2)LED显示屏:有9块8*8点阵LED屏,用来显示乒乓球游戏的界面;
(3)按键盘:用于接受用户的按键输入,当用户有相应动作时,发出控制信号;
(4)电源:电源给系统提供相应的电力;
2.软件模块
(1)内核模块:内核模块由单片机程序设计,接收用户的按键输入,确定游戏运行的状态;
(2)操作用户界面模块:其功能是负责处理和游戏有关的界面显示,将单片机发出的控制信号转换为相应界面显示;
三、系统设计
1.硬件设计
(1)乒乓球游戏机的硬件系统:由9个8*8的LED显示屏,2个按键盘,1个电源、1个继电器组成,以单片机为控制核心;
(2)LED显示屏:由9块8*8点阵LED屏组成,每块LED显示屏通过24个数据线与单片机连接,同时接通电源,实现LED显示屏的控制;。

乒乓球游戏机EDA课程设计完整版本

乒乓球游戏机EDA课程设计完整版本

乒乓球游戏机EDA课程设计完整版本
本文主要介绍了一款基于FPGA可编程硬件的乒乓球游戏机的设计。

本文将重点介绍
如何利用FPGA技术来搭建可编程硬件电路,如何使用Verilog HDL语言来设计数字电路,如何使用Quartus II环境来实现复杂任务,以及如何利用FPGA来完成乒乓球游戏机的EDA课程设计。

首先,在设计乒乓球游戏机的FPGA可编程硬件系统时,最重要的是硬件架构设计,
选择固定板来作为FPGA控制器,能够有效地根据游戏需求控制其各个功能,保证游戏机
运行稳定性和可靠性。

为了满足乒乓球游戏机的需求,FPGA控制器引入Verilog HDL语言,用数字电路的方式进行设计,从而构建出模拟端口,使用I/O 端口对乒乓球系统进行控制,其内部控制器模块实现了所有的乒乓球游戏逻辑功能。

在设计主板的时候,FPGA
中实现的硬件电路会结合安装在主板上的器件,比如七段LED显示器、微型键盘、LED灯等,从而使乒乓球游戏机更加复杂,实现更多的功能。

接下来,使用Quartus II环境,实现乒乓球游戏机的EDA课程设计。

首先,在Quartus II中编写Verilog HDL语言编程,利用FPGA可编程硬件系统设计乒乓球游戏逻辑,构建出特定的模块,实现系统的功能。

其次,编写控制逻辑,运用Verilog HDL语言
编程,在FPGA硬件中得到设计的图像图案,以及搭建复杂的乒乓球游戏的系统结构,实
现乒乓球游戏的控制逻辑功能。

最后,完成了乒乓球游戏机的EDA课程设计。

乒乓球比赛游戏机数电课程设计

乒乓球比赛游戏机数电课程设计

河北理工大学轻工学院信息科学技术部课程设计说明书设计题目乒乓球比赛游戏机班级08测控1班姓名杨洋学号200815020115指导教师许金刚2011年1月6日第二部分设计过程如上图1所示,该电路主要由球台驱动电路,控制电路,计数器,显示译码器和LED数码管等组成。

图中标出的各种信号的含义:CP表示球台驱动电路和计数器的时钟信号;S表示灯(乒乓球)移动的信号;L表示发光二极管驱动信号,由L1~L8组成;CNT表示计数器的计数脉冲信号,由CNT1,CNT2组成;KA,KB表示开关控制的外输入发球、击球信号。

一、单元电路的设计1.球台电路由两片4位74LS194双向移位寄存器接成8位双向移位寄存器。

74LS194功能表如下R D S1 S0工作状态0 1 1 1 1 ××0 00 11 01 1置零保持右移左移并行输入功能说明:(1)当S1 = S0 =1 时,不管各输入端原来是什么状态,在下一个时脉冲到来时,其输出分别是预先输入到并行输入端的 abcd ,这种方式叫送数。

(2)当 S 1 =0 ,S 0 =1 时,其工作方式叫右移,这时,每来一个时钟脉冲,输出端的数各向右移一位,而 Q A 端的输出则由加到 R 端的数来补充。

(3)当 S 1 =1 ,S 0 =0 时,其工作方式叫左移,情况正好与右移相反; Q D 端的输出由加到 L 端的数来补充。

(4)当 S 1 = S 0 =0 时,不管是否有 CP 脉冲作用,输出保持不变,这叫保持方式。

CP=0 时也是保持同步十进制计数器74LS160的功能表如下:CP R D LD EP ET 工作状态×××01111×111××××0 1×01 1置零预置数保持保持(但C=0)计数由74LS160的功能表可知,当~RD=~LD=EP=ET=1时工作状态为计数,即图4中的~CLR=~LOAD=ENT=ENP=1时。

电子课程设计乒乓球比赛

电子课程设计乒乓球比赛

电子课程设计乒乓球比赛一、教学目标本课程旨在通过学习电子课程设计乒乓球比赛,让学生掌握电子课程设计的基本原理和方法,培养学生的创新意识和团队协作能力。

知识目标:使学生了解乒乓球比赛的规则和技巧,理解电子课程设计的基本原理和方法。

技能目标:培养学生运用电子课程设计乒乓球比赛的能力,提高学生的动手实践能力和问题解决能力。

情感态度价值观目标:培养学生对电子课程设计的兴趣和热情,培养学生的创新意识和团队协作精神,使学生认识到电子课程设计在实际生活中的应用价值。

二、教学内容本课程的教学内容主要包括乒乓球比赛的规则和技巧,以及电子课程设计的基本原理和方法。

具体安排如下:第1周:乒乓球比赛的规则和技巧介绍第2周:电子课程设计的基本原理和方法讲解第3周:乒乓球比赛设计的实践操作第4周:乒乓球比赛设计的改进和优化三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。

通过讲授法,使学生了解乒乓球比赛的规则和技巧,理解电子课程设计的基本原理和方法。

通过讨论法,培养学生的团队协作能力和创新意识,激发学生的学习兴趣。

通过案例分析法,使学生能够将理论知识运用到实际中,提高学生的问题解决能力。

通过实验法,培养学生的动手实践能力,使学生能够熟练掌握电子课程设计的方法和技巧。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备适当的教学资源。

教材:选用《电子课程设计》作为主教材,系统介绍电子课程设计的基本原理和方法。

参考书:推荐学生阅读《乒乓球比赛技巧》等参考书籍,以加深对乒乓球比赛规则和技巧的理解。

多媒体资料:制作乒乓球比赛规则和技巧的PPT,以及电子课程设计的实验步骤和操作演示视频,以辅助教学。

实验设备:准备乒乓球桌、乒乓球、电子元件等实验设备,以便进行乒乓球比赛设计的实践操作。

教学资源的选择和准备,将为学生的学习提供全面的支持,帮助学生更好地理解和掌握电子课程设计乒乓球比赛的知识和技能。

乒乓球比赛游戏机电路

乒乓球比赛游戏机电路

数字电子技术课程设计一:课程设计名称:乒乓球比赛游戏机电路二:设计目的1.掌握设计乒乓球游戏机控制系统的方法。

2.熟悉掌握移位寄存器,计数器,译码器的用法。

3.在已学知识的基础上,根据实际情况融会贯通。

三:设计任务和设计要求1.设计任务(1)设计一个由甲、乙双方参赛,裁判参与的乒乓球比赛游戏模拟机。

(2)用八只(或更多)排成长串的指示灯(发光二极管)用来代表球的轨迹,其中一个亮的指示灯用来显示球的当前位置,用一个时钟脉冲源使点亮的指示灯依次从左向右,或从右向左移动,其速度应能调节,一般为1s转换一次。

(3)用两个按钮开关作为球拍,甲乙两人参加比赛。

当球到达甲方时,应立即按动开关(电路应只能响应按钮信号的前沿,若重复按动或持续按下去,将不起作用),表示回球,球到达乙时,同样也应立即按动乙方的开关,将球回击到对方去。

若击中,则乒乓球向相反方向移动,若未击中,则对方得一分。

(4)一方得分时,电路自动响铃3s,此时发球无效,等铃声停止后方能继续比赛。

(5)设置自动计分电路,双方各用二位数码管进行计分显示,每计满11分为一局。

(6)甲、乙双方各设一个发光二极管,表示拥有发球权,每隔5次自动交换发球权,拥有发球权的一方发球有效。

2.设计要求(1) 确定总体设计方案画出总方框图。

(2) 确定各单元电路的功能,进行单元电路的设计,画出逻辑图。

(3) 选择芯片确定型号。

(4) 画出总逻辑图和装配图,并在实验板上组装电路。

(5) 进行电路调试,达到设计要求。

(6) 写出总结报告。

三、基本工作原理和设计方案乒乓球游戏模拟机电路框图如图所示。

频率可调的时钟发生器为双向移位寄存器提供时钟脉冲,用双向移位寄存器的输出端控制指示灯来模拟乒乓球的运动轨迹。

先点亮位于某一方的第1个指示灯,由击球者通过按钮输入“击球”开关信号,实现移位方向的控制。

本电路设计的核心为控制电路,它决定整个系统的动作,必须掌握各信号之间的关系。

框图中的双向移位寄存器也可用计数译码方式实现乒乓球运动轨迹的模拟,如利用加减计数器的两个时钟信号来实现甲乙双方的击球,由表示球拍“击打”按钮产生计数时钟,计数器的输出状态经译码器驱动指示灯发光。

数电乒乓球游戏课程设计

数电乒乓球游戏课程设计

数电乒乓球游戏课程设计一、教学目标本课程的教学目标是使学生掌握数字电路的基本知识和技能,通过设计一个乒乓球游戏电路,培养学生运用所学知识解决实际问题的能力。

具体目标如下:1.知识目标:–掌握数字电路的基本概念和原理;–熟悉逻辑门、逻辑函数、逻辑电路的设计方法;–了解乒乓球游戏的规则和电路设计要求。

2.技能目标:–能够运用逻辑门电路设计简单的数字电路;–能够根据乒乓球游戏的规则,设计出相应的电路;–能够运用数字电路的知识,解决实际问题。

3.情感态度价值观目标:–培养学生的创新意识和团队合作精神;–培养学生对数字电路的兴趣和好奇心;–培养学生的自主学习和解决问题的能力。

二、教学内容本课程的教学内容主要包括数字电路的基本概念、逻辑门电路的设计、逻辑函数的化简、逻辑电路的设计方法以及乒乓球游戏的电路设计。

具体安排如下:1.数字电路的基本概念:介绍数字电路的定义、特点和分类,理解数字信号与模拟信号的区别。

2.逻辑门电路的设计:学习逻辑门的原理和功能,掌握逻辑门电路的设计方法,包括与门、或门、非门等。

3.逻辑函数的化简:学习逻辑函数的定义和性质,掌握逻辑函数的化简方法,包括卡诺图化简法、逻辑代数化简法等。

4.逻辑电路的设计方法:学习逻辑电路的定义和功能,掌握逻辑电路的设计方法,包括组合逻辑电路、时序逻辑电路等。

5.乒乓球游戏的电路设计:根据乒乓球游戏的规则,设计相应的电路,包括得分电路、计分电路等。

三、教学方法为了实现本课程的教学目标,我们将采用多种教学方法,包括讲授法、案例分析法、实验法等。

具体方法如下:1.讲授法:通过讲解数字电路的基本概念、原理和设计方法,使学生掌握相关知识。

2.案例分析法:通过分析乒乓球游戏的电路设计案例,使学生理解和运用所学知识解决实际问题。

3.实验法:通过实验室的实践操作,使学生亲手设计、搭建和测试数字电路,提高学生的实践能力。

四、教学资源为了支持本课程的教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:选用权威、实用的数字电路教材,为学生提供系统、科学的学习材料。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

电子课程设计——基于Verilog的乒乓游戏设计电路学院:专业、班级:姓名:学号:指导教师:2014年12月引言可编程器件的广泛应用,为数字系统的设计带来了极大的灵活性。

可编程器件可以通过软件编程对硬件的结构和工作方式进行重构,使得硬件的设计可以如同软件设计那样快捷方便。

高速发展的FPGA、CPLD兼有串、并行工作方式和高速、高可靠性的特点,在电子系统设计中得到了广泛应用。

通常使用硬件描述语言(Hardware Description Language,HDL)进行数字电子系统设计。

目前应用广泛的硬件描述语言有:VHDL语言,Verilog HDL语言,AHDL语言。

Verilog语言由于具有强大的行为描述能力和丰富的仿真语句从而成为系统设计领域最佳的硬件描述语言。

鉴于如上所述,本系统使用Verilog语言进行设计,采用自上向下的设计方法。

利用Quartus II 9.1 进行Verilog程序的编译与综合,然后用Modelism SE 6.0进行功能仿真和时序仿真,并使用EDA实验箱进行下载验证。

基于Verilog的乒乓游戏设计电路一、设计任务与要求任务:设计一个乒乓球游戏机,模拟乒乓球比赛的基本过程和规则,并能裁判和自动计分。

要求如下:1.使用乒乓球游戏机的甲乙双方在不同的位置罚球或击球。

2.乒乓球的位置和移动方向可由发光二极管和依次点亮的方向决定,为球的移动速度为一定值(我们设计中设为0.5秒移动一位)。

使用者可按乒乓球的位置发出相应的动作,在其他时候击球视为犯规,给对方加一分;都犯规双方各加一分。

二、总体框图设计思路根据乒乓球比赛的过程和规则,首先游戏开始,如果一方非正确击球则另一方加分,当分数大于11时获胜,游戏结束,系统设计流程图如图1所示。

图2给出了乒乓球游戏机的原理图。

用5个发光二极管代表乒乓球,在游戏机两侧各设置二个开关,一个是发球开关,一个是击球开关。

即若A方按动发球开关时,靠近A方的第一灯亮,然后二极管由A向B逐次点亮,代表乒乓球在移动。

当过网后,B就可以击球,否则判B方失分,A方自动加分,重新发球比赛继续进行到一方计分到11分,该局结束,计分牌清零,可以开始新的一局比赛。

反之B发球时也一样。

将核心模块分俩个进程:第一个实现逻辑功能,第二个将整数记分转换为十进制数,便于译码显示;得分显示模块用七段译码器。

各个状态间的转移控制要根据要求来改变转移的状态由于设计要求实现LED灯依此从左到右,或从右到左的移动,同时球拍击球。

若击中,则球向相反方向移动,若未击中,则对方得1分。

就其功能,若要实现记分,就得用到7段数码管,考虑到硬件要求,考虑用动态扫描技术来解决。

动态扫描前要进行译码,即把记数得分的结果译码成七段码。

设计方案完全用Verilog HDL语言编写程序。

三、器件选择1、装有QuartusII软件的计算机一台。

2、EDA实验箱一个(1)7段数码显示管。

(2)5个LED灯。

(3)芯片:使用Altera公司生产的CycloneIV芯片,选用EP4CE6E22C8片。

四、功能模块1、实现整个设计的逻辑功能,当游戏开始时,先通过clr对整个系统进行清零,在输入clk上升沿有效的条件下,甲方开始发球,LED灯从距离甲方最近的一个开始闪亮,并依次向乙方移动,过了网后乙方就可以击球,若乙方击球成功,则球按原路返回,再次过网后甲方就可击球,若甲击球成功,则按以上游戏一直进行下去,若有一方击球失败或提前击球,对方在记分牌上自动记一分;当其中的一方记满11分时比赛结束,清零后可开始下一局。

2、将整数计分转换为十进制数,便于译码显示。

当甲乙双方的记分低位到达9时使低位清零,同时使高位加1,以便正确地在数码管上显示得分。

clr为乒乓球游戏清零键,af为A方发球控制键,aj接球键;bf为乙方发球控制键,bj接球键;clk为控制乒乓球行进速度的时钟信号,接50MHZ时钟信号源;shift为LED灯显示输出端,接5个LED显示灯;计分要经过译码器译码后接8位共阴极数码显示管。

Verilog HDL程序module lqq (shift,scan,seg7,clk50Mhz,clr,af,aj,bf,bj); output[4:0] shift;output[3:0] scan;output[6:0] seg7;input clk50Mhz; //50Mhz时钟信号input af; //A方发球input aj; //A方击球input bf; //B方发球input bj; //B方击球input clr; //系统复位段reg[4:0] shift; //5个LED代表乒乓球甲左乙右)reg[3:0] scan; //数码管地址选择信号reg[6:0] seg7; //7段显示控制信号(abcdefg)reg clk1,clk2;reg[3:0] a_score,b_score;reg[1:0] cnt;reg[3:0] data;reg[3:0] a_one,a_ten,b_one,b_ten;reg[23:0] count,count1;reg a,b; //A和B的控制位reg[4:0] shift_1;//-------------2hz分频--------------always@(posedge clk50Mhz)beginif(count==24'd25000)begin clk1<=~clk1;count=0;endelse begin count<=count+1;endendalways@(posedge clk1)beginif(count1==24'd250)begin clk2<=~clk2;count1=0;endelse begin count1<=count1+1;endif(cnt==2'b11)begin cnt<=2'b00;endelsebegin cnt<=cnt+1;endend//乒乓球游戏规则always@(posedge clk2)beginif(clr)begin a_score<=0;b_score<=0;a<=0;b<=0;shift_1<=0;endelsebeginif(!a&&!b&&af) //如果A发球begin a<=1;shift_1<=5'b10000;end //A的控制位置1else if(!a&&!b&&bf)begin b<=1;shift_1<=5'b00001;end //B的控制位置1 else if(a&&!b) //球从A向B移动beginif(shift_1>5'b00100) //如果没到球网B击球,则A加分beginif(bj)begina_score<=a_score+1;a<=0;b<=0;shift_1<=5'b00000;endelse //如果B一直没有接球,则A加分begin shift_1[4:0]<=shift_1[4:0]>>1;endendelse if(shift_1==5'b0)begin a_score<=a_score+1;a<=0;b<=0;endelsebeginif(bj) //如果B击球成功,则B的控制位置1,A的控制位清零begin a<=0;b<=1;endelsebegin shift_1[4:0]<=shift_1[4:0]>>1;endendendelse if(b&&!a) // 球从B向A移动beginif(shift_1<5'b00100&&shift_1!=5'b0)beginif(aj) //如果没到球网A击球,则B加分beginb_score<=b_score+1;a<=0;b<=0;shift_1<=5'b00000;endelsebegin shift_1[4:0]<=shift_1[4:0]<<1;endendelse if(shift_1==5'b0) //如果A一直没接球,则B加分begin b_score<=b_score+1;a<=0;b<=0;endelsebeginif(aj) //如果A击球成功,则A的控制位置1,B的控制位置清零begin a<=1;b<=0;endelsebegin shift_1[4:0]<=shift_1[4:0]<<1;endendendendshift<=shift_1;if(a_score==4'b1011&&!clr)begin a_score<=a_score;b_score<=b_score;endif(b_score==4'b1011&&!clr)begin a_score<=a_score;b_score<=b_score;endend//---------将A和B的计分换成BCD码---------- always@(posedge clk2)begincase(a_score[3:0])4'b0000:begin a_one<=4'b0000;a_ten<=4'b0000;end 4'b0001:begin a_one<=4'b0001;a_ten<=4'b0000;end 4'b0010:begin a_one<=4'b0010;a_ten<=4'b0000;end 4'b0011:begin a_one<=4'b0011;a_ten<=4'b0000;end 4'b0100:begin a_one<=4'b0100;a_ten<=4'b0000;end 4'b0101:begin a_one<=4'b0101;a_ten<=4'b0000;end 4'b0110:begin a_one<=4'b0110;a_ten<=4'b0000;end 4'b0111:begin a_one<=4'b0111;a_ten<=4'b0000;end 4'b1000:begin a_one<=4'b1000;a_ten<=4'b0000;end 4'b1001:begin a_one<=4'b1001;a_ten<=4'b0000;end 4'b1010:begin a_one<=4'b0000;a_ten<=4'b0001;end 4'b0011:begin a_one<=4'b0001;a_ten<=4'b0001;end default:begin a_one<=4'bx;a_ten<=4'bx;end endcaseendalways@(b_score[3:0])case(b_score[3:0])4'b0000:begin b_one<=4'b0000;b_ten<=4'b0000;end4'b0001:begin b_one<=4'b0001;b_ten<=4'b0000;end 4'b0010:begin b_one<=4'b0010;b_ten<=4'b0000;end 4'b0011:begin b_one<=4'b0011;b_ten<=4'b0000;end 4'b0100:begin b_one<=4'b0100;b_ten<=4'b0000;end 4'b0101:begin b_one<=4'b0101;b_ten<=4'b0000;end 4'b0110:begin b_one<=4'b0110;b_ten<=4'b0000;end 4'b0111:begin b_one<=4'b0111;b_ten<=4'b0000;end 4'b1000:begin b_one<=4'b1000;b_ten<=4'b0000;end 4'b1001:begin b_one<=4'b1001;b_ten<=4'b0000;end 4'b1010:begin b_one<=4'b0000;b_ten<=4'b0001;end 4'b0011:begin b_one<=4'b0001;b_ten<=4'b0001;end default:begin b_one<=8'bx;b_ten<=8'bx;end endcase//----------数码管动态扫描--------------always@(posedge clk1)begincase(cnt[1:0])2'b00:begin data<=b_one;scan<=4'b1110;end2'b01:begin data<=b_ten;scan<=4'b1101;end2'b10:begin data<=a_one;scan<=4'b1011;end2'b11:begin data<=a_ten;scan<=4'b0111;end default:begin data<=4'bx;scan<=4'bx;endendcase//----------------七段译码---------------- case(data[3:0])4'b0000: seg7[6:0]=7'h3f;4'b0001: seg7[6:0]=7'h06;4'b0010: seg7[6:0]=7'h5b;4'b0011: seg7[6:0]=7'h4f;4'b0100: seg7[6:0]=7'h66;4'b0101: seg7[6:0]=7'h6d;4'b0110: seg7[6:0]=7'h7d;4'b0111: seg7[6:0]=7'h07;4'b1000: seg7[6:0]=7'h7f;4'b1001: seg7[6:0]=7'h6f;default: seg7[6:0]=7'hx;endcaseendendmodule五、总体设计电路图硬件连接情况:af、aj、bf、bj连接实验箱上的K1、K2、K4、K5 clr连接K12作为系统复位端shift[0]……shift[4]连接实验箱上的L1、L2、L3、L4、L5scan[0]……scan[3]连接实验箱上的LED_C1 、LED_C2、 LED_C3、LED_C4seg[0]……seg[6]连接实验箱上的LED_A、LED_B、LED_C、LED_D、LED_E、LED_F、LED_G管脚分配图波形仿真图A方发球B方不接球A方发球B提前接球犯规B方发球A不接球B方发球A提前接球犯规AB僵持球实验箱连接图:六、心得体会Verilog HDL硬件描述语言打破了硬件和软件设计人员之间互不干涉的界限,可使用语言的形式来进行数字系统的硬件结构、行为的描述,直接设计数字电路硬件系统,通过编程、下载后,该芯片已经具备了原来需要使用复杂的数字电路实现的功能;这样,使用语言描述大大缩短了开发周期,减少了开发难度,并使得系统更加灵活、稳健。

相关文档
最新文档