单片机俄罗斯方块游戏设计大全设计思路大全,程序大全_第1页
单片机俄罗斯方块游戏设计大全设计思路大全,程序大全_第2页
单片机俄罗斯方块游戏设计大全设计思路大全,程序大全_第3页
单片机俄罗斯方块游戏设计大全设计思路大全,程序大全_第4页
单片机俄罗斯方块游戏设计大全设计思路大全,程序大全_第5页
已阅读5页,还剩94页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、游戏机的制作:俄罗斯方块目 录摘要11方案论证1.1开发意义1.2功能介绍2 设计思路3硬件电路2. 174HC573驱动芯片电路2. 2 8+8LED点阵的接口电路2. 3单片机最小系统电路2.4糠体电路图4系统调试3. 1硬件调试3. 2软件调试5 作品展示6 元器件清单7结束语致谢参考文献游戏机的制作:俄罗斯方块摘要:近年来随肴计算机在补会领域的渗透,单片机的应用正在不断地走向深入,应用到 备个领域。在实时检测和白动控制的单片机应用系统屮,单片机往往是作为 个核心部件来 使用,仅单片机方血知识是不够的,还丿莊根据具体帔件结构,以及针对具体应用对象特点的 软件结合,以作完善。我做的趣目是i

2、个用51单片机制作的游戏机,大致分位软件和硬件2大部分,硕 件上要通过5按鹽、I个8*8LED点阵屏、 个单片机系统,实现积木的左、右、下、变化、 复位丘个模式,完全达到俄罗斯方块所实现的功能次项目用专门的PROTUES仿真,而采用KEIL软件程序进行程序调试关键词:AT89S52单片机芯片;74HC573驱动芯片;GYXM-1558ASR-LED点阵屏1方案论证1.1开发意义:充分理解点阵显示的原理,已经动态扫描的应用,对生活中的产品有了个全新 的认识,不但怫得理论与实际的片曲,也时对自己思维的一次强荷力的挑战,做出这个东西 让我收获及务。1.2功能介绍:开始让他显示个积木,在按傩没实现控制

3、的时候,每隔1S卜移一次,育触底 处埋功能,当碰到底的时候图形不能下移,判断能否消行,能消行则消行,不能再判断是否 到顶,到底则从新开始,没到底产生下个随即数,中间有5个按键控制,-个实现图形左移,一个实现图形右移,一个实现下移,一个实现旋转.一个复位。2设计思路图形的上下移动:棍拥点曲理论町通过图形数据的左右移动和地址变化來实 现;图形的变化:可通过地址变化來得到.即把需要变化的数据送到 固迳地址,通过地址 变化再送回显示的地址世而。图形的碰边处理:町通过族个边上的数抓判断是占到边來实现一与原有图形相遇:町通过打原仃图形数摭进彳比较处理來实现.:图形的旋转:农固定地址里血实现旋转比较容易,但

4、是在行进中的图形旋转就比较费脑 筋,我是川一个地址计数卜移的次数再川一个地I计数右序右移的次数,再幄据这此次数 确定图形的地址.再把这些地址送到图形变化的一个固定的地址中,变化后再送回到显示的 地址中去显示。图形的碰边处理:如果不对图形进彳j边框处埋,图形就会们多动,看不到我们想要的 效果:我是用把边框数据与图形数据进行位运筛,再刘断这些数据就可以得到图形是舎到边。3硬件电路U12DOQ0193D1Q1D2Q2D3Q3D4Q4D5Q5D6Q6D7Q7LEOE74HC573TEXT18 417I516 *亠 615.714-813912 -1令此芯片时个锁存器.也可以做驱动芯片驱动LED点阵那幕

5、,这里啲的电源和地系统附加了 但是实际中的加上去,不然芯片不能工作=#.2 8*8LED点阵的接口电路I湎的址仿真的图匕端接数拥下端丿T片选但是实际屮引脚很不规则,所有的花时间去测 用一节干电池,或者用指针力用表打到电阻10K档。2.3单片机最小系统电路i06RSTPO.7/KOTFZfyFT fFZAOTODTP2A11AIEFZ WASWF25rAQFZAHF2?/AFinrrzF3fRRtirrPXITDF12冲 2/nrroinnpaarrn乍F3ST1F1I5far/wr2. 5 幣体电路图以及仿頁效果Ci3t Y)c Eii Rd,hDR啦 Ltbcvyy Ttp!teHtlpDR

6、m W Til 1 1 OAUMAriNG :OWCO50ClXt JUbad:-XOO ICO.O 卜(3刊比E和低 : 加林0学皿疙八坊|1 - X2 4音6 “但是里面的电源.地、晶振、复位、EA筹在仿真中系统自动加的要是在实际生活中 的加进去。4系统调试3. 1硬件调试第-检衣单片机的最小系统是否正常.包括检査晶振、单片机2端电压、复位电路已经EA第二 看驱动芯片是否T作正常、接法是否正确,再检查LED点阵是占接的正确,可以用一节I电池测,也可以用指针力用表打到电阳10K档位测。3.2软件调试流程图程序代码俄罗斯方块,采用移片选的方法.编译时间:09年1刀15编译者: 谭华实现功能:俄

7、罗斯方块的旋转,左移,右移消行碰边 触底产牛随即数等压木实现右移的城木功能=初始化自定义=pia nxutmequ p2shuchuequ plbtOeq li20h. 0btlequ20h. 1bt2equ20h. 2bt3equ20h. 3bt4equ20h.4bt5equ20h.5bib equ 20h. 6bt8 equ21h. 0 bt9equ21h. 1 btlOequ 2111.2billequ 21h. 3orgOOOOhajmpstartorgObliljmpintlOorg30h -pi I rtx kn/厶/I,-丄柱中初妬化-tart:movsp, #60hmovtni

8、od, #21hmovthO, #Oblhmov110, #0e0hmov thl, #25mov 111,t?25mov rl,#0()callchushihuacallchuzliisetbeasetbetOsetbtrOsetbtriclrbtOclrbtlclr bt2clr bldclr bt5clr btBclr bt9clr bi0clr billsetb bl6mov 35h, t?Ofehmov r2, #00mov r4, #00土程序ma in:jnbbtO, ma i nclrbtOcallsaomiao;和描按铤callxianshiO;调用卜移显示画而子程序call

9、xianshi;调用触边麻静态图形显示的子用序jb bllO, loop;判断是否触顶,=1,游戏结束,跳到满屏显示callchudi;调用触底子程序callxiaoliang;调用消行判断子程序call yanshi_40ms ;调用延时40ms消抖子程序,40ins到,BT5置1jnb bt5, xiaOclr bt5callpanduan;调用按键判断处理子程序xiaO: jnb bt9, xia ;图形快速卜落标志位,=1快速下落clr bt9callx i a 1uo;调用图形下落子程序ajmp mainxia:cal 1 yanshi Is ;延时 Is 子程序 Is 到,BT1

10、= 1jnb bt1, mainclr bt 1call xialuoajmp mainloop: call vunshi_500ms ;调用延时 500ms 子程序,500ms 到 jnb bill, mainclr billcall manping;调用满屏全亮子稈序ajmp main按键扫描saomiao:jb p3. 2, qqOsetbbt.2ajmpqqqqO:jbp3. 1,qqlsetbbt3ajmpqqqql:jbp3. 0,qq2SQtbbt4ajmpqqqq2:jbp3. 3,qq4setbbt.Bajmpqqqq4:selb bt6clrbt2clrbt3clr bt4

11、clrbtSqq: ret图形下移子程序xiuluo:mov a.,35hmov 35li,ret刿断子程序panduan:jnb bl2t wwOclr bi2jnb bt6, wwOclr bl6call youyiajmp wwwwO:jnb bt3, wwlclr bt3clr bt6jnb bt6, wlcall zuoyiajmp wwwwl:jnb bt4, ww2clr bt4jnb bt6, ww2clr bibcall zhuanajmp wwww2:jnb bl&wwclr bi8jnb bl6T ww clrbl6call kuaixiaww: rel;快速卜落子程序k

12、uuixia:setb bt9ret满屏/程序manping: mov 41h,#Offhmov 42h,#Offhmov 43h,#Offhmov 44h,#Offhmov 45h,#Offhmov 46h,#Offhmov 47h,#Offhmov 4Xh,#Offhret清屏f程序qingping: niov 41h,#00hmov 42h,#00hm(.)v 43h,?001imov 44h,#00hmov 45h,#0011mov 46h,#00hmov 4711,#0011mr)v 48h,#00hret下移显示xiunshiO: mov a, 35hmov pl, 31hiik)

13、v p2, acall delay rl amov pl, #00inov pl, 32hmov p2, acal1 delay rl amov pl, t?00mov pl, 33hmov p2, aca1 delavmov pl, t?00图形右移子稈序zuoyi:mov* 31 hjnbacc. 0,ddlajmpddddl:mova,32hjnbacc. 0,dd2ajmpdddd2:mova,33hjnbacc. 0,dd3ajmp dddd3:mov a, 35hcjnea,saOcallsadOajmpddsaO:mova, 35hcjnea, #Ofdh, salcallsad

14、lajmpddsal:mov a, 35hcall sad2ajmpddsa2:mova, 35hcjnea, #0f7h, saBcallsad 3ajmpddsa3:mova, 35hcjnea, #0efli, sd4callsad4ajmpddSct4:mova, 35hcjnea, #Obfh, ddcallsad 5ajmpdddd: r?lsadO: mov a, 33hrr a.mov 39h,亓00mov 39h, aanl a, 43hcjne a,#00,dd4mov33h, 39hmova, 32hmov 39h, #00mov 39h, aanl a, 42hcjne

15、 a, #00, dd4niov32h, 39hmov a, 31hmov 39h, #()()mov 39h, aanl a, 41hcjne a, #00, dd4mov 3111, 3911dec 51hdd4:rels MM MB Mizhuan: cjne rl, tiO, buOcallzhuanOajmpbubuO:cjne rl, 41t bulcallzhuan1ajmpbubul:cjne ibu2callzhuan2ajmpbubu2:cjne rlt U3f bu3callzhuan3ajmpbubu3:cjne rl,#4, buctill zhuandlm: ret

16、zhuanO:inc r2cjne r2,#1, ggOmov 31h,tnohmov 32h,#18hmov 33h,t?10hcall yizhouajfflP ggggO:cjner2, 2, gglmov 31li,#38hmov 32hthl Ohmov 33li,#00hcall y i zhouajmp ggggl:cjner2, 3, gg2mov 31 h,ttlOhmov 32h,#30hmov 33h,tJlOhcall y i zhouajmp gggg2:cjne i2, #4, ggmov r2, #00mov 31h,#10hmov 32h,ft38hmov 33

17、h,00hcal 1 yizhougg: retzhuanl:inc r2cjne r2, #L gggOmov 31h,t?08hmov 32h,ftlHhmov 33h,tJlOhcall yizhouajmp ggggggO: cjne亡,#2, gggmov 31h,#30hmov 32h,#18hmov 33h,SOOhmov r2, #0()cally i zhouggg: retzhuan2:inc r2cjne r2, #1, hhOmov 31 h,tilBhmov 32h,恥Ohmov 33h,t?00hcall y i zhouajmp hhhhO:cjner2, #2,

18、 hhmov 31li,ttlOhmov 32h,#18hmov 33h,#08hmov r2, #00cal 1 yizhouhh: retzhuan3:inc v2cjne r2,#l, hhlmov 31h,#20hmov 32h,#38hmov 33h,#00hcall yizhouajmp hhlhhl:cjner2, #2,titi2mov 31h,#18hmov 32h,410hmov 33h,#10hcall yizhouajmp hh4hh2:cjne12 片3,hh3mov 31 h,#38hmov 32h,tt08hmov 33h,ttOOhcall yizhouajmp

19、 hh4hhB:cjne r2, #4, hh4movr2, #00mov31h,tJlOhmov32h,ttl Ohmov33h,#30hcal1 yizhouhirl:retziiuaivl:i nc r2cjner2, #1, hh5mov 32h, ill.Ohmov 31 h, #10hmov 33ht?18hcall yizhouajmp hhBhh5:cjne12 #2,hh6mov 31h,t?3Hhmov 32h,#20hmov 33h,t?OOhcall yizhouajflip 11118lihb:cjner2, #3,hh7mov 31li,#18hmov 32h,#0

20、8hmov 33li,h08hcally i zhouajmp hh8hh7:cjne r2,#4, hhBmov r2, #00mov 31h,#08hmov 32h,#38hmov 33h,UOOhcally i zhouhh8:retyizhou:mov a, 51hcjne a, #5, tt7jmp tttt7:cjne a, #6, ttOcall yyizhoujmp t IttO:c jne弘 #7, tt lcallyyizhoucallyyizhoucallzhuan pzmOjmp ittil:cjne* 口&112callyyizhoucallyyizhoucallyy

21、izhoucallzhuaiipanOjmp ttll2:cjne g #9,lt3callyyizhoucallyyizhoucallyyizhoucallyyizhoucallzhuanpanOjmp ttlt3:cjne % #4,tt4callzyizlioujmp ttltd:cjne * #3,115callzyizhoucallzyizhoujmp tttt5:cjne a, ft2,tt6callzyizlioucal 1zyizhoucallzyizhoucallzhuanpan1jmp tt:c jnea, #1,callzyizhoucallzyizhoucallzyiz

22、houcallzyizhoucallzhuanpanlII: ret;二二二二二二二二二触边旋转刿断二zhuanpanO:mov a.,3 lhjnb acc*. 0, huiO call zy i zhou ajmp hui huiO: mov a, 32hjnb acc. (), hui 1 call zyizhou ajmp hui hui1: mov a, 33hjnb acc. 0, hui call zyizhou hui:ret=触边旋转刊断zhuanpanl:mov a, 3lhjnb acc. 7, hui3 call yyizhouajmp hui2hui3: mov a,

23、 32hjnb acc. 7, huidcall vyizhouajmp hui2hui4: mov a, 33hjnb acc. 7, hui2call yyizhouhui2: rel;=x轴右移一位= yyizhou:mov a, 3111rl amov 31 h, amov a, 32hrl amov 32h, amov a, 33hrl amov 33h, aret;=x 轴左移一位= zyizhou:mov a, 31 hmov 31 h, amov a, 32hrr amov 32h.niov u, 33hmov 33h, aretxianshi:mov pl, 41h#0feh

24、calldelaymov pl,t?00m(.)v pl,42hmov p2,iJOfdhcal 1delaymov p 1、00inov pl,43hmov p2,ttOfbhcallde J aymov pl.mov pl,44h#0f7hcalldelayinov pl,口 00IIKV pl,15httOefhcal 1delavmov pl,#00mov pl,46hmov p2,#Odfhcal 1delaymov p 1、i?00mov pl, 17hmov p2, #ObfhcalL delavmov pl, #()0movpl, 48hmov p2, #7 fhcull de

25、laymov pl, 口00re l;=消行显示子稈庁x i cioluing: movat 48hc jnea, ftOffh, zhOcal 1t iaozhenOzhO:niova, 47hcjnea, ftOffh, zhlcallriaozhenlzhl:mov a,46hcjnea, #0ffh, zh2calltiaozhen2zh2:mov a,45hcjnea,#Offh, zh3calltiaozhen3zh3:inova, 44hcjneat ftOffh, zh4cal 1tiaozhendzlvl:movat 43hcjnea, ttQffh, zhbcalltiao

26、zhenbzh5:mov a,42hc jne ti,仃OITh, zh6cal 1t iaozhe r)6zh6:rettiaozhenO: mov 48h,#0()mov 49h,4Khmov 48h,47 hmov 4711,46hmov 4611,4511mov 45h,44hm(.)v 44h,43hmov 43h,42hmov 42h,41hmov 41 h,49hrettiaozhenl: mov 47h,#00mov 49h,47hmov 47h,46hmov 46h,45hmov 45h,44 hmov 44h,43hmov 43h,42hiik)v 42h,41hmov 4

27、1h,49hrettiaozhen2: mov 46h,#00mov 49h,46hmov 46h,45hmov 45h,44hmov 44h,43hmov 43h,42hmov 42h,41hmov 4111,49htiaozhen3: mov 45h,#00mov 49h,45huiov 4511,44hmov 4411,43hmov 4311,42hm(.)v 4211,41hmov 4 111,49hretliaozhend: niov 44ht #00mov 4911,彳4hmov 44h,43hmov 43h,42hmov 42h,41 hmov 41h,49hret.Iiuozh

28、en5: mov 43h,#00mov 49h,43hiik)v 43h,42hmov 42h,41hmov 41h,49hrettiaozhenG: mo- 42h, 800mov 49h,42hmov 42h,41 hmov 41 h,49hret延时T秒程序tyanshiIs:incr3mov a,r3cjnea, 4dh,XXmovr3, 口00selbbllXX:retyanshi500ms:incr3mov a,r3cjneei, ft25,xxllmov13 #00setbbillxxl 1:ret延时40m秒子稈序yanshi_JOins:incrdcjne14,#3, eem

29、ov14,#00setbbt5ee:retsuiji:mova,tilmov b, t?5div ab mov rl, bret触底(程序*chudi:niov ti, 33hcjnea, t?00, bbbOniov a,32hcjnea, t?OOh,bbblljmpbbbbbbO:1jmp bbb3bbbl:niova, 35hcjnea, i?Obfht nn7ljmpnn6nn7:mova, 35hcjnea, ttOfeh, nn8ljmpkkOnnS:mova, 35hcjneat tJOfdh, nn9ljmpkklnn9:inova, 35hcjneat #Ofbh, nnl

30、Oljmpkk2nnlO:movaT 35hcjneat #?0f7ht nnl 1ljmpkk3nn 11:mova, 35hcjnea, tiOefh, nn!2nnl2:1 jm 卩 kkzlkkB:1jmp bbbmov a, 32hcjnea, t?Odfh, kk51 jmpkk5mova, 32hanl a,13hcjnea, t?OOh,iuiOljmpbbbmova, 32hanl a,44hcjnea, t?OOh,nnlljmpbbbmova, 32hanl a,45hcjnea, ftOOh,nn2kkO:kkl:kk2:mov a 35hanl a,46hcjnea,

31、打OOh,nn3ljmpbbbmova, 32hanl a,47hcjnea, #00h,nnzlkk4:kk5:1jmp bbbmov aT 32hanl a,48hcjnea, ttOOh,nn5ljmpbbbmov 35hmov a,32horl a,42hmov 42h,amov a,31horl a,41hmov 4111, aselbbllOcallsuijicullchuzhiljmpbbbmov35h,mov a,32horl a,43hmov 43h, amov a,31horl a,42hmov 42h, acallsui jicallchuzhiljmpbbbmov 35

32、htmov a,32horl a,4ihnnO:nnl:nn2:ttOfehttOfehttOfehmov 44h, ainov a, 31horl a, 43hmov 43h, acall sui jicall chuzhi 1jmp bbbnnB:mov 35h, ttOfehmov a, 32horl a, 45hmov 45h, amov a,31horl a,44timov 44h, acallsuijicallchuzhi1 jmpbbbnn4:mov35h, #0fehmov a,32horl a,46hmov 46h, amov a,31horl a,45hmov 45h, a

33、callsuijicallchuzhiljmpbbbnn5:inov 35hf #0fehmov a, 32hor a, 47hmov 47h, a mov a, 3Ihorl a, 46hmov 46h,callcallljmpsui jichuzhibbbnn6:mov35h, ftOfehmov a,32horl a,48hmov 4811, ainov a,31horl a,47hmov 47h, acallsuj jicallchuzhi1 Jmpbbbbbb3:mova, 35hcjnea, ttOdfh, bbGljmpbb5bbH:mova, 35hcjnea,hOfeh,bb

34、7ljmpjjobb7:mova, 35hcjnea, HOfdh, bb8ljmpJjlbb8:mova, 35hcjnea, ftOfbh, bb9ljmpJj2bb9:mova, 35hcjnea, #0f 7h, bblOljmpjj3bblO:mov a 35hcjneljmpa, ftOefh, bbb9jj4bbb9:1jmp bbbJJO:mova, 33hanl a,44hcjneti, t?OOb,bbOinov a,32hanl a,43hcjneti, ftOOh,bbO1 Jmpbbbjjl:mova, 33hanl a,45hcjnea, ftOOh,bblmov a,32hanl a,44hcjnea, 600h,bblljmpbbbJJ2:mova, 33hanl a,46hcjnea, #00h,bb2mov a,32hanl a,15hcjnea, ftOOh,bb21 Jmpbbbjj3:mova, 33hanl a,47hcjnea, #00h,bb3mov a,32hanl a, z16hc jne a, t?00h, bb3Ijmp bbbj j4:mov a, 33hanl a,48hcjnea, #00h,bblluiov a,32haril a,47hcjnea, t?OOh,bb4ljmpb

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论