夹乒乓球游戏

作文一:《夹乒乓球游戏规则》300字

面我给你说说游戏规则:分成两组进行比赛,每一组分别用筷子把乒乓球夹到各自的盆里,在规定时间内完成,最后看那组盆里的乒乓球多,哪一组就为胜利者。第一组有:刘宇轩、祁胤烝、刘滨榕和我。第二组有:王肖佳、韩艺彰、苏杭作文一二三、王绍瑄。游戏开始了,裁判员宣布:“开始!”我们马上进入紧张的比赛当中。在游戏的一开始还好,都比较遵守规则,把夹到的球放在自己组的盆里,夹一个数一个;她们那一组也一样。可是到后来,两组的人看时间快到了,个个就想疯了似的,边喊边抢边夹,他们手忙脚乱的,到最后也没夹进几颗。当时我一点也不紧张,很用心地家住每一颗球,可是我们也犯规了,因为我们把他们组掉了的球给藏起来了,让裁判发现了,最后裁判宣布:“第二组获得胜利。”我们组总结了教训:遇事要沉着、冷静,不能慌张。我希望所有爱玩游戏的同学,都要记住,游戏必须的遵守规则。

作文二:《乒乓球游戏》100字

/*************乒球乓游戏机* ****************************

利用TC89CS25单片上机程编,8用发光个极管二示球;表用

两按个分钮表别示甲乙个球员两的球;拍方发球后一,以固定球速

向另度方一动(运光发极管二次点依)亮,当球达最到一个后

光二发极管,时方击球(对按按下钮球将向)相反方向动运在其,他

时击球视为候规,给犯对加方1;都分规,犯各加自分1;、乙各甲

有一码管计分;数裁有判一个钮按是系统初始化,每,得次后分,按

一次下。

******ﻩ在单*机最片小统板系上编程**************************/*

引/脚定

义//1kP=1^;k21P=^21显示;为0PP2;,水灯显流示为P3

#i;ncluedr

.#iuld

#edinfeuint  nsiugendint  #

dfineeuch raunsi gen char

sdbi tk=P111;

^sib k2t=1P^2;

itb out,out1;

uintk cas1,nkcans2

;u

charc oe dablt[]e{=~0xc,~0x0f9~0,xa4,~x00,b~x099~,x90,~0x28,~02作文一二三x8f,~080x~,0x90;}

void elad(yiut n)z{

int ,x;yfor(x

z;=>0;xx--)

fory(11=;0>0yy--;;)

ioddi psly(uacahr ,uachra )b

P=0abtle[/a10];

P=02FEX;de

al(y);1

P=t0abela%[10;]

P=02Fd;X

edlya(1;)

P0=able[t/1b0];P

20=FX;bd

laey1);(P

0=ablte[%b1];0

2=P0X7F;

dlea(1);yP2=0

XF;F

}vod sica(n){

uitn i;i

f(k1==0){

elay(d1)0;

f(ik!)1

fi(3P=0XF=)E{

ountc1=

;}els

kcasn++;

}1

hwiel(!k1)

};if(

k2==0){

del

a(y1);0

fi(k2)!

{if

(3==0XPF)7{

cuon1=t;1

}lees

{ks

anc+2;+}

hwli(!ke2);}

} v

id inito)

({T

0H=(5636550-000/)52;6

T0L=(563655-000)02%5;

6E=1A;

ET0=1;TR0

1;=

ovidm ain()

uint ,teim;

P3p=XFE0;i

nit)(;w

ihe(l1){

(a);i

(focut==n)

{1c

onut=0

;emp=t0fe;

forxi(0;i

P3

t=ep;m

tepm=_corl(tem_p1,)

;dley(a500;)d

silapyks(a1ksca,2n;)}

fi(cout1=n=1)

ocut1=n0;te

mp=x70;ffo

(ri0;=

3=tePpmﻩ;

teﻩpm_=corr(te_m,p);1

eldy(a50)0;

isdlaypks(ca1n,ksac2)n

}}

ovdi t0)( nierturt p1{

uint ;t

HT=065(3655000-)02/5;6

TL0=(6553-50000)6%265

;++;ti

(f>=t2)

{=0t;

sa(;)

isdlpayks(ac1,nkcans);

2}

作文三:《乒乓球游戏》300字

用乒乓球可以玩很多有趣的游戏。准备好了吗?请你和爸爸妈妈一起玩吧。

乒乓球游戏文齐加全

图神马卡通动画公司

接球能手

爸爸将一捧乒乓球用力向地

面扔去。妈妈和宝宝各自用手中

的塑料袋去接不断弹起的乒乓

球,直作文一二三至乒乓球全部被接住或落

地后不再弹起为止。清点塑料袋

中乒乓球的个数,谁接到的球最

多,谁就是冠军。冠军和爸爸交换

角色,继续游戏。

开心乐快乐

园游

戏端球跳跳跳球块

在距离宝宝和妈妈3米处各放一个小脸盆,爸爸发出口令后,宝宝和妈妈分别依次抛出自己手中的5个乒乓球,使乒乓球经过数次反弹之后,最终落入小脸盆中。谁的小脸盆中乒乓球个数最多,谁就是冠军。

宝宝和爸爸每人在胸前平托着一本杂志,杂志上面放3~5个乒乓球。妈妈发出“开始”的口令后,宝宝和爸爸要在原地不停地跳。谁的杂志上的乒乓球先全部掉下,谁就是失败者。

14启蒙编辑孙莉

((33~~77岁

岁))

作文四:《乒乓球游戏》700字

蚯蚓

蚓蚯

总家 同要们 谈他

的 们紧张 感。

科牙医 生

牙 科 生 约 翰医次 每给人病 动手术

前非

可家 这天   无很聊 小蚯 蚓 就 把  己自切   成 两段

乐打

羽 毛 去 了 球 蚯 妈 妈觉蚓得 这 方 法 不  错就 把 自 己切

成 四 段  打 麻将   了 蚯 蚓 去爸爸 想 了  想  就 把自己 切

,,

一儿

尽可  解能除他

次他

同位 警当察  的

“。

成了 肉 末球

”…

…。

蚯妈妈蚓 哭说着 : 你怎  么这  么傻  ?切 这“

病人 谈了  几 句后 便 问他是  否有 什 么  问题,

我 一只

有碎么会 死  !

的蚯爸蚓爸弱弱 地 说

然突想 踢

个题

,问

警 察不 安地 说

我 从 没

给过你 罚款 单

是不

是?

潞器嚣豢 沙

计潺 时器

题 解思

2路

一t

一在

钟 发表 明 之 前 漏沙  是 人古 用来 计,

让两

只 沙

漏,

起作文一二三/p>开始  计时

。时

的 最基  本工  具在 沙 漏 的 漏   斗装中 上

小 沙当漏  放  完沙

大子沙漏  里的 沙子 还  要 漏

,沙些

根 据

沙   漏 光子的  时间  来 定确某

。段

钟  ;将小   漏沙 翻过  来 当大沙  漏  的 子 漏沙

的间长 度 现在

沙 漏 里 小 的 子 沙还 要漏

分钟 将;大,

我们 有 5

分   和

只钟。

分 钟

的 沙

漏沙漏 翻 过 来

小当沙 漏  沙 的子漏  后完

大沙

,计

时  器 各钟 时 的间

如  要 果 用们它测 量   出 分4

漏 里 就剩  下漏4   钟的 分沙子

大 等沙漏 放  完

是 否 做能到

沙,

时 刚间  好4分 钟

示   可:利 用 时 间差

园舒 髓

玩 固个 简单的   戏游规  则 如下 :两  个 人轮

题解思路

虑,

们我从  后的情最 况 开始

,从流

10 0

个 乒

乓   中拿球球装 入

口袋

次 至

每。

如 果只 剩 6个  乒乓 球

让一 对  先 拿球

。,

少 要  拿1 球个

但  最多不 能   超过 5 个球

定就 能拿到   六第 个乒 乓球  因为 对 方 只

拿到 第

110

个 乒

乓球 的 人 为  利胜

能拿

个。

球,

则 可  以 接着相应 地 拿  5

请问 :  如果你   最是先 球拿 的人

至1

球 拿几 你

以,  该后  么怎 才 拿 保能证 你 能 拿 4

然后 我   再 们 把 1 00个  乒 乓 从 球 后向

到前 第 0 01 个乒  乓球

按组 分?

开,

6个 乒 乓

后面球,

0 1 /= 160 6

…以所

组的

410

0,

球  被 成 分了 (1 6  +

61 1

61

=17  组 :)

示 :运 用   向反思 考

一组4 个 球

组组 每6 个球

先 拿

第,

每组   都让 对 先 方拿

己  完 拿剩下 的

球 的  后最一

样  你能拿 就 到第1   6组

个球

以 想 要 获胜  第

,,

一次

定要

4拿个

乒乓 后 面再球  根据对手 每   次拿 的球 数随机

应保

每证 拿走轮  的数球是6 个 就   行了

一个 人有要做

豪 杰雄心的斗   志 应 当!做个   开创

一代

—人

恩采周

作文五:《夹运乒乓球1》400字

夹运乒乓球

一、活动目的

为了培养同学的团结合作能力,也为了让大家在研究生期间收获一份珍贵的回忆,所以特地为大家举办这个夹运乒乓球的比赛。

二、策划单位

C1楼楼管会

三、活动地点

C1楼前的空地

四、活动对象

西区全体同学

五、报名方式

我们此次比赛分三人一组,在30号以前将组长的名字和联系方式报给你所在楼幢的楼长或文艺部部长,我们也接作文一二三受现场报名。

六、活动准备

1、二个脸盆、椅子

2、25个乒乓球

3、三双木筷子

4、3位工作人员。

5、第一名40元的奖品,第二名30元的奖品,第三名20元的奖品

七、比赛流程

1、一组是三个人。

2、比赛时间为1分钟。运的最多数目的队获胜,取前3名

3、桌子的间距为6米,平均两个人的间距为两米,第一个桌子上的脸盆里

装有25个乒乓球。

4、首先第一个人用筷子将桌子上的脸盆里的乒乓球夹起,以最快的、最稳

的方法传送到第二个人的筷子上,且每个人的活动区域只能在原先规定的两米的区域,不准过线,否则违规,以此类推,最后一个人送到另一个桌子的脸盆里。

5、在传球的过程中,只能用筷子夹,身体的任何部分均不能触碰球,否则

违规。若在中途球掉了,则此球不算数,需要第一个人重新夹球。

6、第一人必须等到最后一个人将球送到脸盆之后,或者当球掉到地上再重

新夹下一个。

7、在规定时间内,我们以最后的脸盆中的乒乓球来评定成绩。

8.若前三名中成绩相同时,则再比一次。

C1楼管会

作文六:《吹乒乓球游戏》1300字

吹乒乓球游戏作文

哈,我们赢了!啊?我输了?一阵阵欢笑声从教室传来。咦?这个班的学生在干什么啊?哦,原来是301教室正在进行一项有趣的活动:吹乒乓球比赛。

第三节一上课,王老师就快步走上讲台,对大家说:今天,我们玩一个跟乒乓球有关的游戏,叫‘吹乒乓球’。王老师刚一说完,全班就沸腾了。我今天带乒乓球了。我肯定赢!等全班静下来,王老师宣布了比赛规则:三张桌子为一组,每组准备一只乒乓球,把三张桌子拼在一起,课桌中间画上一条线,将球放在线上,再选两名同学站在桌子两边,一个同学当裁判。裁判一声令下,双方开始吹球,乒乓球在哪方落地,哪方失败。三局两胜。都明白了吗?明白了!

我们组迅速把桌子拼好,开始比赛。第一局结束时,一位组员建议三对三,由原来的男生对男生、女生对女生改成了三位男生对三位女生。

开始!一位女生一声令下,我们就开始了比赛,大家都使劲地吹。我鼓起腮帮子,一口气接一口气地吹,腮帮子就像一只装满气的大气球,带动乒乓球忽左忽右。只见小小的乒乓球在桌面上一会儿往男生这边跑,一会儿往女生这边奔,就是不落地。就在双方作文一二三都觉得腮帮子发酸时,突然一位男生在我们毫不在意的时候,深呼一口气,用力一吹乒乓球,只听呼的一声,女生还没反应过来,乒乓球就落地了。第一局,男生赢了。

第二局,三个女生发挥巾帼不让须眉的精神,齐心协力,赢了男生。

第三局,那些男生害怕输给女生,气急败坏,连连犯规,气得我们女生都不想跟他们比了。在我们的坚持下,双方打平。

虽然这是一个很简单的游戏,但我觉得它的规则、它所需要的精神在日常生活中的许多事情上都能体现出来,不是吗? 吹乒乓球游戏作文

今天,我们班举行了吹乒乓球比赛,比赛十分有趣,游戏规则:用八个杯子、水和一个乒乓球,把八个杯子里灌满水,然后把乒乓球入杯子里,再用嘴轻轻地吹乒乓球,把球从第一个杯子吹到第四个杯子里,要看谁先进谁就赢。

每两个小组选三个人来比赛,我们选的是刘裕昕、刘戴源、杨卓行,这三个人都信心满满的上去应战。而对方的选手是贾云皓、周昱晟、张文璟。第一局刘裕昕对战贾云皓,开始了,刘裕昕迈着轻微地步伐而且面带微笑的上去了,而对手好像也不甘示弱呢!刘裕昕轻轻地吹着球,只见球从第一个杯子跳到了二个,第三个,最后,刘裕昕用力一吹,吹到第四个杯子里耶,三四组的同学大叫着。而对手贾云皓吹到第二个杯子时掉落在了地下。刘裕昕赢了。

接下来的第二局、第三局比赛我们组都取得了胜利。而对手虽然失败了,可他们没有灰心,他们相信下一次一定会胜过我们。

今天这次比赛我明白了,不管胜还是败,只要你有胜利的信心,迟早都会成功! 吹乒乓球游戏作文

叮铃铃&&上课铃响了,我们端端正正地坐在位子上,等待着王老师的到来。老师来了!只见他脸上挂满了笑容,我心想:一定有好消息。果然不出我所料,老师对我们说:下节课举行吹乒乓球比赛!耶!老师万岁!同学们高兴的说。

终于等到了下一节课,老师准备八个杯子,两个乒乓球,在叫我们打了一桶水,游戏开始了。

我队派出的第一个队员——刘越气势勃勃,仿仿佛要置对方于死地。裁判员大声说:三,二,一,开始。刘越先吸一口气,再猛地吹了过去,球一下子吹到了第三个杯子里,可是他怎么吹也吹不到第四个杯子里,乒乓球在原地打转转,光转不动。刘越猛地一吹,乒乓球终于安家落户了。再看看女生,她们才吹到第二个杯子里,所以,第一局我方胜利。

终于到我了,我弯下腰,弓着身子,一副严阵以待的样子。开始!我使出浑身力气,想打败对方,可一着急,乒乓球落地了,我立即捡起来,放到第一个杯子上,重吹。这次,我总结了经验,心放慢慢的,小心地吹着乒乓球,终于我赢了,我高兴得跳了起来。

这次乒乓球比赛,让我明白了一个道理:心急吃不了热豆腐,只要心放慢慢的,不能使劲地吹,不然的话,乒乓球就会无家可归了哦!

作文七:《vhdl乒乓球比赛游戏》1000字

可编程专用集成电路和硬件描述语言实验

乒乓球电路

李万鹏

电子与通信工程

1120092029

乒乓球游戏机

一、 设计任务与要求:

设计一个能够模拟乒乓球比赛的基本过程和规则,并能自动裁判和记分的乒乓球游戏机。要求:比赛时甲乙双方各在不同的位置发球或击球;根据球的位置发出相应的动作,提前击球或出界均判失分;乒乓球的位置和移动方向有灯亮及依次点亮的方向决定;甲乙双方设置各自的记分牌,任何一方先记满21分该方就算胜了此局;当记分牌清零后,又可开始新的一局比赛。

二、 总体框图

1、

乒乓球游戏机的总体框图如下图所示:

2、 设计思路及各模块功能:      设计思路:

用8个发光二极管代表乒乓球台,在游戏机的两侧各设置两个开关,一个是发球开关,一个是击球开关。甲方按动发球开关时,靠近甲方的第一盏灯亮,然后发光二极管由甲向乙依次点亮,代表乒乓球在移动。当球过网后,按设计者规定的球位乙方就可以击球。若乙方提前击球或没有击到球,则判乙方失分,甲方自动加分,重新发球比赛继续进行到一方记分到21分,该局结束,记分牌清零,可以开始新的一局比赛。 (1)片选信号产生模块

片选信号产生模块是用来产生数码管的片选信号,将产生的片选信号输送 到数据转换模块,以便其对输入数据进行选择。 (2)核心模块

核心模块有两个功能,第一个是实现逻辑功能,即对甲方乙方的发球击球  情况进行判断,然后再对双方谁得分进行记录;第二个是将整数得计分转换成十进制数,以便译码显示。

(3)数据转换模块

数据转换模块是将核心模块输送过来的数据通过片选信号对其进行选择, 并将符合要求的数据输送出去。 (4)七段译码器

七段译码器用来将输入数据进行翻译,便于数码管显示出数据。

三、实验程序及原理图

(1)片选信号产生模块  library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity sel is

port(clk:in std_logic;

sell:out std_logic_vector(2 downto 0)); end sel;

architecture sel_arc of sel is begin

process(clk)

variable tmp:std_logic_vector(2 downto 0); begin

if(clk'event and clk='1')then if(tmp="000")then tmp:="001";

elsif tmp="001"then tmp:="100";

elsif tmp="100"then tmp:="101";

elsif tmp="101"then tmp:="000"; end if;

end if;sell

仿真波形:

作文一二三p>(2)核心模块 library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity a is

port(clr,af,aj,bf,bj,clk:in std_logic;

shift:out std_logic_vector(7 downto 0); ah,al,bh,bl:out std_logic_vector(3 downto 0)); end a;

architecture _arc of a is signal amark,bmark:integer; begin

process(clr,clk)

variable a,b:std_logic;

variable she:std_logic_vector(7 downto 0); begin

if clr='1'then        a:='0';        b:='0';

she:="00000000";        amark

elsif clk'event and clk='1'then      if a='0' and b='0' and af='1'then     a:='1';

she:="10000000";

elsif a='0' and b='0' and bf='1' then     b:='1';

she:="00000001";

elsif a='1' and b='0'then     if she>8 then    if bj='1'then

amark

she:="00000000"; else

she:='0'&she(7 downto 1);

end if;

elsif she=0 then

amark

if bj='1'then       a:='0';       b:='1'; else

she:='0'&she(7 downto 1);  end if; end if;

elsif a='0' and b='1'then if she

bmark

she:="00000000"; else

she:=she(6 downto 0)&'0'; end if;

elsif she=0 then

bmark

if aj='1' then       a:='1';       b:='0';

else she:=she(6 downto 0)&'0';        end if;       end if;      end if;     end if;   shift

process(clk,clr,amark,bmark)

variable aha,ala,bha,bla:std_logic_vector(3 downto 0);     variable tmp1,tmp2: integer;     begin

if clr='1' then           aha:="0000";

ala:="0000";           bha:="0000";           bla:="0000";           tmp1:=0;           tmp2:=0;

else if clk'event and clk='1' then           if amark>tmp1 then              if ala="1001"then                 ala:="0000";                 aha:=aha+1;                 tmp1:=tmp1+1;      else

ala:=ala+1;            tmp1:=tmp1+1;        end if;       end if;

if bmark>tmp2 then     if bla="1001"then        bla:="0000";        bha:=bha+1;        tmp2:=tmp2+1;      else

bla:=bla+1;        tmp2:=tmp2+1;      end if;     end if;     end if;

al

end process;

end _arc;

CLR为乒乓球游戏清零键,接按键;AF为甲方发球控制键,接按键;AJ为甲方接球控制键,接按键;BF为乙方发球控制键,接按键;BJ为乙方接球控制键,接按键;CLK为控制乒乓球行进速度的时钟信号,接CLK0时钟信号源;SHIFT[7..0]为LED灯显示输出端,接8个LED显示灯;AH[3..0]为甲方记分的高位,AL[3..0]为甲方记分的低位,BH[3..0]为乙方记分的高位,BL[3..0]为乙方记分的低位,以上四位都在经过译码器译码后接8位共阴极数码显示管。 仿真波形:

(3)数据转换模块  library ieee;

use ieee.std_logic_1164.all; entity ch41a is

port(sel:in std_logic_vector(2 downto 0); d0,d1,d2,d3:in std_logic_vector(3 downto 0); q:out std_logic_vector(3 downto 0)); end ch41a;

architecture ch41_arc of ch41a is begin

process(sel) begin

case sel is

when "100"=>qq

when "000"=>qq

仿真波形:

由上述波形图可以看出:在输入片选信号的作用下,当sel为0时,q输出d2的数据,sel为4时,q输出d0的数据,sel为5时,q输出d1的数据,sel为其它数时,q输出d3的数据。波形符合要求。 (4)译码模块 library ieee;

use ieee.std_logic_1164.all; entity dispa is

port(d:in std_logic_vector(3 downto 0);       q:out std_logic_vector(6 downto 0)); end dispa;

architecture dispa_arc of dispa is begin

process(d) begin

case d is

when "0000"=>qqqq

when "0100"=>qqqqqq

仿真波形:

三、 总体设计电路图

仿真波形:

四、实验总结:

1、通过本次实验进一步掌握了使用

MaxPlus的设计流程

2、这次实验综合采用VHDL语言设计程序和图形输入法,充分锻炼了编程和调试程序的能力。实验要求较多,需要足够的耐心和高度谨慎的态度,只要将所有条件理清楚,搞清它们之间的牵制关系,一一列出,并在头脑中形成清晰的条理框架,一点点、一块块攻克。语句不难,难的是一环扣一环的编程思维,出错不要紧,关键是能坚持下去,一旦将程序调试成功一定会收获很多。我在实验过程中遇到了很多问题,通过向老师及同学请教都已基本解决,弥补了学习中的不足,受益匪浅。

作文八:《乒乓球游戏机》1500字

燕 山 大 学

EDA课程设计报告书

题目:   乒乓球游戏机

一、设计题目及要求

题目:乒乓球游戏机

要求:

1.用 8 个发光二极管表示球;用两个按钮分别表示甲乙两个球员的球拍;

2.一方发球后,球以固定速度向另一方运动(发光二极管依次点亮),当球达到最后一个发光二极管时, 对方击球(按下按钮)球将向相反方向运动。过早或过晚击球视为犯规,系统自动给对手加 1 分;

3.甲、乙各有两个数码管计分(11 分制),每两球换发一次发球方。

4.裁判有一个按钮,系统初始化和每次得分后按下一次,发球方的第一个 LED 会被点亮。

二、设计过程及内容(包括○1总体设计的文字描述,即由哪几个部分

构成的,各个部分的功能及如何实现方法;○2主要模块比较详尽的文字描述,并配以必要的图片加以说明,但图片数量无需太多)

设计过程:

1) 总体分析,经过我们对项目要求的反复阅读和解析,决定分为四个模块来做:球移位控制电路、球移位驱动电路、发球方选择电路、计分电路。

2) 各模块功能及实现方法;

① 球移位控制电路,实现通过双向移位寄存器74194来控制8个二极管依次点亮用以代表乒乓球的移动这一功能。两个输入端S0,S1来控制球的左右移动,S0=0,S1=1时L2-L7依次亮表示球向右移动;S0=1,S1=0时L7-L2依次亮表示球向左移动。

② 球移位驱动电路,实现通过两个球员的按作文一二三钮开关J1,J2来控制输出S0,S1的值并输入到球移位控制电路。具体电路如图所示,裁判按钮“CP”按下时S0-S1=1,移位寄存器实现并行输入,将发球方选择电路选择出来的发球方用L1或L8表示出来。当L8亮时,表示乙为发球方,J2开关按下,通过7474中D触发器作用使得输出S0=1,S1=0,球向左移。L1亮时同理。

③ 发球方选择电路,利用十六进制计数器74161中输出的后两位

QA,QB

取同或,得到输出为0,0,1,1,0,0,1,1。。。的信号,将此信号及其取非后的信号分别输入到移位寄存器的预置数端A.D两端,等待并行输入信号到达便可通过L1或L8将发球方显示出来。

④ 计分电路,计分电路是由两片74160构成的11进制计数器,两个计数器的ENT/ENP端分别由L1,J1取异或和L8,J2取异或控制,以此实现L8亮,J1=0(甲未击球)时给乙加分;L8不亮,J1=1(甲提前击球)时给乙加分,其余情况不给乙加分的目的。给甲加分的加分器与此同理。

由J2和

L8控制

的给甲

加分的

计分器

如左图

所示

电路图中由裁判信号“CP”控制球移位驱动电路中7474的清零端CLRN端口和发球方选择电路中74161的时钟信号CLK端口,用以实现每回合结束,计分的同时,部分系统初始化,并判断发球方开始下一回合的目的。

将各模块封装后,连接输入、输出端得到的总电路图如下图所示

由总电

路图得

到的仿

真波形

图如左

图所示

仿真波

形图

中,分

别达到了“每两球一换发”,“发球方的第一个LED点亮”,“过早击球或过晚击球自动给对方加一分”等设计要求。

三、设计结论(包括设计过程中出现的问题;对EDA课程设计感想、意见和建议)

问题:

1.首先第一个问题就是刚拿到题目时,有种无从下手的感觉,后来根据老师讲解的分模块来做,把一个大的、繁杂的电路分成若干个小的模块,一个一个的实现、调试,最终连在一起就能达到目标的方法。将我们的总体设计分为了四个小而具体的模块,最终达成目标。

2.其次就是“每两次换一个发球方”的问题,这个当时困扰了我们很长一段时间,后来在经过一次一次的不断改进后才采用了74161的后两位取同或,并用裁判信号控制计数器的时钟信号的方案,最终得到了我们想要的结果。

3.还有一个重点问题,就是需要给两个球员击球的足够的反应时间,不然的话,球到眼前,还来不及按按钮便已经给对方加分了。经过认真思考和不断调试,最后将时钟信号周期控制在1s左右,利用移位寄存器和加分计数器的时钟信号的上升沿的差值得到了0.4s左右的反应时间,问题得到解决。

感想:

只有一句话能代表我现在的感受:“收获了什么,只有真正做过了的人才知道”。

真正的,通过EDA课程设计,很大得提升了我们的自主思考能力和创新设计思维,通过实践将课本中学到的知识,在实际中得以运用。

很明显的能感觉到,我们从对软件的不熟悉慢慢变得信手拈来,从对集成器件的死记硬背慢慢变得熟能生巧,在一次次仿真时的出错和改错的过程中,就像在经历一次次蜕变,变得更冷静,更睿智的思考自己的问题所在。渐渐地,伴随着、见证着我们蜕变的项目也被完善的尽善尽美,达到了我们的目标。

最后就是,东西由我们亲手做出来了,很有成就感。

建议;

1) 实验室放一些相关的资料、书籍,以便查阅。

2) 能不能再多找一些题目,或者是出一些新题,因为很有代表性的一直都是这些题,有很多都可以在网上查到前辈们做的成品的。不太利于之后的学生的创新思维的提高

作文九:《乒乓球游戏机》2000字

燕 山 大 学

EDA课程设计报告书

题目:

一、设计题目及要求

1.设计题目:

乒乓球游戏机

2.要求:

(1)用8个发光二极管表示球;用两个按钮分别表示甲乙两个球员的球拍;

(2)一方发球后,球以固定速度向另一方运动(发光二极管依次点亮),当球达到最后一个发光二极管时,对方击球(按下按钮)球将向相反方向运动。过早或过晚击球视为犯规,系统自动给对手加1分;

(3)甲、乙各有两个数码管计分(11分制),每两球换发一次发球方;

(4)裁判有一个按钮,系统初始化和每次得分后按下一次,发球方的第一个LED会被点亮。

二、设计过程及内容

1.总体设计

根据题目设计要求,该乒乓球游戏机主要分为六个模块进行设计,其分别为ping-pong模块(untitled2)、control模块(mokuai3)、score模块(1)、change模块(change)、clk模块(clk)、scan模块(saomiao)。ping-pong模块实现了乒乓球的运动的功能;control模块实现了乒乓球的往返运动的功能;score模块实现了球员的计分的功能;change模块实现了裁判按下按键后换发球方的功能;clk模块实现了产生有效脉冲和分频的功能;scan模块实现了扫描的功能。

总电路图如下:

总电路图的仿真图如下:

仿真说明:输出端0~7的高电平脉冲表示乒乓球的运动轨迹,两位球员a0和b0正常击球使得球在两位球员之间往返运动,此时计数器不产生加分。当球员犯规时,系统自动给对方加1分。裁判j按下按钮,球回发球方。

2.模块设计

(1)clk模块(clk)

该模块的功能由两片双D触发器7474和两个D触发器以及相应的门电路实现。当在一局比赛中球员多次按下按键也只有第一个上升沿有效(当对手或裁判按下返回原状态),从而产生脉冲。该电路也有防抖动功能,避免加作文一二三分错误。下面的D触

发器将时钟信号二分频,使得乒乓球运动速度适中,上面的D触发器消除毛刺。 该模块的仿真图如下:

仿真说明:输出端clk0显示的是将时钟信号clk二分频的结果。输出端a、b显示的输入端a0,b0的有效脉冲。

(2) control模块(mokuai3)

该模块的功能由双D触发器7474和门电路实现。输入端A、B分别代表甲、乙

两位球员,输入端J代表裁判。当输入端Q0为高电平时代表乒乓球到达甲处,甲按下按键产生一个低电平脉冲,通过clk模块产生高电平脉冲,通过此模块使sr为高电平,sl为低电平,乒乓球向相反方向移动,过早或过晚击球不会通过与门产生高电平,乒乓球不会反向移动。当裁判按下按钮后,通过clk模块产生高电平脉冲,通过非门使7474处于置数状态,发球方的第一个LED灯点亮。

该模块的仿真图如下:

仿真说明:当输出端Q0和输入端A同为高电平时,输出端sr为高电平,乒乓球右移;当输出端Q7和输入端B同为高电平时,输出端sl为高电平,乒乓球右移。输入端J为高电平时,发球方的第一个LED灯点亮。

(3) ping-pong模块(untitled2)

该模块的功能由双向移位寄存器74198和门电路实现。8个输出端的接LED灯,灯的亮灭代表乒乓球运动的轨迹。输入端sl为高电平(sr为低电平)和sr为高电平(sl为低电平)表示小球的左移和右移,sr、sl同时为高电平时表示甲(set为低电平)或乙(set为高电平)为发球方。clk接时钟信号表控制乒乓球移动速度的大小,频率越大移动越快。

该模块的仿真图如下:

仿真说明:当给输入端sl一个高电平脉冲时,乒乓球的左移,给输入端sr一个高电平脉冲时,乒乓球右移。给输入端set一个高电平脉冲使发球方的第一个LED灯点亮。

(4) score模块(1)

该模块的功能由两片十进制计数器74160、D触发器和门电路实现。两片74160分别控制个位和十位的分数,实现十二进制计数(十一分制)的功能。当球员犯规时(AB和Q的状态在clk的上升沿不同,异或门输出高电平,计数器从而产生进位),自动给对手加1分,计分暂停(由右边的两个D触发器和或非门,反相器实现。计分之后产生的上升或下降沿使或非门输出低电平,计数器停止工作),当裁判(j)按下之后继续计分,由于裁判按下按钮, AB和Q(发球方)的状态不一样,可能会计分,而左边的D触发器输出低电平,计数器不工作。所以上面的3个D触发器防止了多次加分的可能性。

该模块的仿真图如下:

仿真说明:当任一球员犯规后,计数器给对手加一分,直到加满十一分,计数器跳变为零。

(5)scan模块(saomiao)

扫描电路通过74161计数器,输出2~5的数码管的地址循环,并通过4个74151数据选择器进行选择,74151的输入信号是得分模块中的个位十位,并由地址循环确定哪一路输入,输出接7448,经过7448使最后的输出结果在实验箱上的数码管显示,并由地址信号确定哪几个管亮,表示两位球员的比分。

(6)change模块(change)

该模块的功能由集成4位二进制加法计数器74161组成。Set循环输出0 0 1 1 ,0 低电平代表甲发球,1 高电平代表乙发球,实现每两次换一次发球方的功能。 该模块的仿真图如下:

仿真说明:当裁判按下两次按钮时,换一次发球方。

三、设计结论

通过这次课程设计,我们能够掌握EDA的基础知识,进一步加深对EDA的了解,也产生了更加浓厚的兴趣。动手设计的过程中收获了很多课本中没有的东西。学习了解了MAX+PULSSⅡ软件。

这次课程设计,从选题到分析题目,通过网络和书籍查找资料。确定思路,划分模块,设计电路图。然后分模块进行仿真。最后将所有模块进行连接,形成总的电路图,检查无误后连接实验箱。

在这个过程中,我们也遇到了许多问题。例如在clk模块中,如何解决在一局比赛中只选取球员和裁判的有效的脉冲的问题。还有在score模块中,如何解决计数器重复加分的问题,即一次加分中只加一分就加分停止。在scan模块中扫描电路的问题。在change模块中,如何解决裁判按下按键后换发球方的问题等等。除了在设计电路图方面遇到的问题,最后在实验箱操作时,clk频率的选择出现问题,不断尝试,最终获得适当频率。

从中我们学会了在碰到困难时要学会,耐心,思考,用自己的能力,尽力自己解决问题。在此衷心感谢各位老师的帮助和悉心教导,使我们学习到了更多的知识,探求到更多解决问题的办法。同样还感谢一起合作的同伴,正是因为大家的共同努力和坚持不懈的探索精神,才有了我们这次的成果!

此次课程设计让我们认识到高新技术的快速发展和应用,让我们看到了EDA技术功能的强大,也让我们认识到掌握他们的重要性,同时也看到了各自的差距与不足。只有今后坚持不懈地努力学习,拓宽知识面,才能更好的掌握新技术。

作文十:《乒乓球游戏机(1)》2100字

《EDA设计与应用》 课程设计报告

题    目:    乒乓球游戏机           姓    名:                       专    业:

班    级:                       学    号:             指导教师:

二0一五年6月26日

目录

1、设计目的    …………………………………………………….1 2、设计原理   ……………………………………………………….1 3、设计内容及过程…………………………………………………2 4、调试分析…………………………………………………………….7 5、结束语      ………………………………………………… …8 6、参考文献…………………………………………………………. .8

乒乓球游戏机

1设计目的

1学会使用软件QuartusII进行设计项目工程,并对这个项目进行编程,让其实现相应的功能。

2掌握软件QuartusII软件的操作界面和操作原理,能利用软件进行设计并进行仿真。分析相应的程序并进行改进。

3总结经验,改进实验。

2设计原理

乒乓球游戏以发光二极管逐个点亮模拟乒乓球运动轨迹,乒乓球游戏机是用16个发光二极管代表乒乓球台的,中间两个发光二极管兼做为乒乓球网,用点亮的发光二极管按一定的方向移动来表示乒乓球的运动。另外设置发球开关Af、Bf,以及接球开关Aj、Bj。利用7段数码管作为记分牌。

甲乙双方按乒乓球比赛的规则来操作开关。当甲方按动发球开关Af时,靠近甲方的第一个灯亮,然后按照顺序向乙方移动;当球过网后乙方可以接球,接球后灯反方向移动,双方比赛继续;如果一方提前击球或未击到球,则判失分。重新发球后继续比赛。

电路符号图

本设计中的乒乓游戏机是由5个发光二极管代表乒乓球台,中间的发光二极管兼作球网,用点亮的发光二极管按一定方向移动来表示球的运动。在游戏机的两侧各设置两个开关,一个是发球开关af、bf;另一个是击球开关aj、bj。甲乙二人按乒乓球比赛规则来操作开

关。当甲方按动发球开关af时,靠近甲方的第一个发光二极管亮,然后发光二极管由甲向乙依次点亮,代表乒乓球的移动。当球过网后按设计者规定的球位,乙方就可以击球。若乙方提前击球或没有击中球,则判乙方失分,甲方的记分牌自动加一分。然后重新发球,比赛继续进行。比赛一直要进行到一方记分牌达到21分,该局才结束。本设计由译码显示器、按键去抖、状态机/球台控制器和记分器等部分所组成。

游戏原理图如下

3设计内容及过程

3.1设计内容

设计一个乒乓球游戏机,模拟乒乓球比赛的基本过程和规则,并能自动裁判和几分。具体要求如下:

(1)使用乒乓球游戏机的甲乙双方在不同的位置发球或击球。

(2)乒乓球的位置和移动方向可由LED显示灯和依次点亮的方向决定,球的移动速度设为0.5s移动1位。使用者可按乒乓球的移动位置发出相应的动作,提前击球或出界均判失分。

3.2设计电路

(1)设计该乒乓球游戏机的输入与输出端口。首先考虑输入端口,一般应该设置一个异步置位端口rst,用于在系统不正常时回到初始状态:两个发球输入端Af和Bf,逻辑‘1’分别表示甲方和乙方的发球;两个击球输入端Aj和Bj,逻辑‘1’分别表示甲击球和乙击球;一个时钟输入端口clk。

其次考虑输出端口,芯片应该有16个输出端口来控制16个发光二极管,输出逻辑‘1’即输出一个高电平,可以使发光二极管点亮;另外,要直观地表示双方的得分,就得用到4个七段译码器,每方用到2个,可以表示0到11的数字,每个七段译码器需要芯片的7个输出端口来控制,总共28个输出端口。

(2) 在整个程序中,状态机器是中央控制器的作用,由它控制的信号来影响整个程序中的其他相关部分,如记分部分,发光二极管部分。乒乓球游戏机中有两个计数器a_score和b_score,分别记忆甲和乙的得分,用发光二极管的轮流发光表示球的移动轨迹。

(3)七段译码器是在数学电路设计中经常用到的显示电路。所谓七段译码器,其实是由7段发光二极管组成的用于显示数字的器件。记分译码器(mydecoder):由于记分需要显示出来,所以要使用七段译码器。作文一二三而状态机中的记分是由4位二进制码来表示的,即a_score和b_score。以下程序就是实现从4位二进制码转换成七段译码显示。

(4)还需要设计一个数码管的程序来显示乒乓球的运动地址。以便准确的判断乒乓球的运动轨迹。 总的程序如下: library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity ping_pang is

port(clk1khz:in std_logic;------1khz时钟信号

rst:in std_logic;----------系统复位

af,aj:in std_logic;--------A方发球,A方击球

bf,bj:in std_logic;--------B方发球,B方击球      shift:out

std_logic_vector(15

signal t:integer range 0 to 3; signal

data:std_logic_vector(3

downto 0);

signal

a_one,a_ten,b_one,b_ten:std_logic_vector(3 downto 0); begin

-------------------------------------2Hz分频----- process(clk1khz)

variable count:integer range 0 to 2;

begin

if clk1khz'event and clk1khz='1' then     if count=2 then clk1_2hz

---------------------------------乒乓球比赛规则---------- process(rst,clk1_2hz)

variable a,b:std_logic;---a和b的

downto 0);----16个led代表乒乓球台      scan:out

std_logic_vector(3

downto 0);------数码管地址选择信号      seg7:out

std_logic_vector(6

downto 0));-----7段显示控制信号(abcdefg)  end;

architecture a_one of ping_pang is

signal clk1_2hz:std_logic; signal

a_score,b_score:integer

range 0 to 11;

控制位

variable 球则继续向b移动            end if;        elsif

shift_1=0

shift_1:std_logic_vector(15 downto 0); begin

if rst='1' then

a_score

shift_1:=(others=>'0');

then-------------如果b一直没接球则a加分

a_score

if bj='1' then----如果b击球成功则b的控制位置1,a的控制位清0                a:='0';                b:='1';            else shift_1(15 downto 1);            end if;        end if;

elsif b='1' and a='0' then ----------------球从b向a移动

if shift_1

shift_1:='0'&

elsif clk1_2hz'event and clk1_2hz='1' then

if a='0' and b='0' and af='1' then ---------如果a发球               a:='1';

shift_1:=

elsif a='0' and b='0' and bf='1' then ------如果b发球               b:='1';

shift_1:=

elsif a='1' and b='0' then -----------------球从a向b移动        if

shift_1>128

then           if

aj='1'

then

b_score

a:='0';                 b:='0';

shift_1:=

elsif shift_1=0 then

b_score

then----------------------------如果没到球网b击球则a加分            if bj='1' then                 a_score

shift_1:=

shift_1:='0'&

shift_1:=shift_1(14

shift_1(15 downto 1);----如果b没有击

a:='0';                   b:='0';        else

if aj='1' then ---如果b击球成功则a的控制位置1,b的控制位清0                   a:='1';                   b:='0';            else downto 0)&'0';            end if;       end if;      end if; end if;

shift

shift_1:=shift_1(14

=>a_ten

when 10|11=>a_ten

end case; case b_score is

when 0|10 =>b_one

end process;

----------------------------------将a和b的计分换成bcd码------------------ process(a_score,b_score) begin

case a_score is

when 0|10 =>a_one

end case; case b_score is     when =>b_ten

when 10|11=>b_ten

0|1|2|3|4|5|6|7|8|9

end case; end process;

------------------------------------数码管动态扫描计数-------- process(clk1khz) begin

if clk1khz'event and clk1khz='1' then         if t=3 then t

end case; case a_score is     when

0|1|2|3|4|5|6|7|8|9

end process;

-------------------------------------数码管动态扫描-----------

process(t,a_ten,a_one,b_one,b_ten) begin case t is

when 0=> data

begin case data is

when

when

end case; end process;

-----------------------------------------七段译码-------------------- process(data) end;

when others=>seg7

3.3仿真结果

由于a方和b方的游戏规则相同,下面仅给出a方发球后各种情况的功能仿真结果,而b方发球后的情况与其类似

(1)a方发球后b方提前击球,同时a方得分。此情况的功能仿真结果见图2,观察波形可知,球的移动方向为从左到右,b方提前击球后a_score加1,即a方得分

图2 a方发球后b方提前击球的功能仿真图

(2)a方发球后,b方在过网后击球。此情况的功能仿真结果见图3,观察波形可知,b方接到球后,球的移动方向为从右到左。

图3 a方发球后b方在过网后击球的功能仿真图

(3)b方击球后,a方没有击球。此情况的功能仿真结果见图4,观察波形可知,b方击球后,球的移动方向为从右到左,球过网后,a方没有击球,同时b方得分

图4 b方击球后a方没有击球的功能仿真图

4调试分析

通过调试我们可以观察到,16个LED排成一条直线,以中点为界,两边各代表参赛双方的位置,其中一只点亮的LED指示球的当前位置,点亮的LED依此从左到右,或从右到左,其移动的速度应能调节。当“球”(点亮的那只LED)运动到某方的最后一位时,参赛者应能果断地按下位于自己一方的按钮开关,即表示启动球拍击球。若击中,则球向相反方向移动;若未击中,则对方得1分。一方得分时,电路自动响铃3秒,这期间发球无效,等铃声停止后方能继续比赛。 12 设置自动记分电路,甲、乙双方各用2位数码管进行记分显示,每计满11分为1局。甲、乙双方各设一个发光二极管,表示拥有发球权,拥有发球权的一方发球有效。

结束语:

通过设计,了解了软件QuartusII的使用并能对相应的程序进行分析,学会了自主建立和设计工程,并进行仿真和分析。受益匪浅。所以,我觉得这次的实验还是很有意义的,让课本的只是和实践相结合,这样学起东西来会更让人深刻。

参考文献:

[1] 黄平.基于QuartusⅡ的FPGA/CPLD数字系统设计与应用. 北京:电子工业出版社,2014.   [2] 徐颖.Protel 99 SE EDA技术及应用[M].西安:机械工业出版社.2005

[3] 杨恒,卢飞成. FPGA/VHDL快速工程实践入门与提高[M].北京航空航天大学出版社.2003  [4]甘历.VHDL应用与开发实践[M].科学出版社.2003

扫一扫手机访问

发表评论