俄罗斯方块单片机课程设计作品说明书.doc

俄罗斯方块单片机课程设计作品说明书.doc

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
俄罗斯方块单片机课程设计作品说明书

单片机课程实训作品说明书 作品说明介绍 作品名称:掌上游戏机(俄罗斯方块) 作品实现功能: 按下、左、右键控制图形改变位置; 图形在落到底部和障碍物上时,把图形变为障碍物; 复位键使游戏重新开始; 暂停/继续键可以暂停、继续游戏 选择目的:实践单片机课程所学到的知识。 作品操作介绍 作品外观图 点阵屏:显示障碍物以及图形 零欧电阻,用作飞线 ③ 16个1K欧电阻,用来限制电流大小 ④ STC12C5A60S2单片机,用来烧录烧录主控程序,是整个作品的控 制器 ⑤ 74LS154N芯片(4-16)译码器,用来产生列选信号 ⑥ 电源指示灯:通电时点亮 ⑦ 微动开关1:向上的按键,用于改变图形 ⑧ 排针:用于连接电源正负极以及RXD和TXD ⑨ 10K欧电阻,用来限制通过电源指示灯的电流 ⑩ 微动开关2:功能按键,用于游戏的复位操作 ? 自锁开关:实现整体的电源总控制(断负) ? 微动开关3:功能按键,用于游戏的暂停/继续 ? 微动开关4:向右的按键,用于图形右移 ? 微动开关5:向下的按键,用于图形下移 ? 微动开关6:向左的按键,用于图形左移 作品功能介绍及操作说明 给游戏机上电 将电源正极接在排针处标有VCC的位置 将电源负极接在排针处标有GND的位置 按下自锁开关完成上电 让图形移动或改变图形朝向 按向上键:改变图形的朝向 按向下键:让图形瞬间落到可以下落的最下方 按向左键:图形向左移动一位 按向右键:图形向右移动一位 游戏暂停/继续、复位 按暂停/继续键:游戏暂停/继续 按复位键:游戏复位,重新开始 作品制作说明 电路原理图 作品原件清单 元件名称 型号 数量(个) 单片机 STC12C5A60S2 1 4-16译码器 SN74LS154N 1 单片机底座 40引脚 1 点阵屏 8*8 4 微动开关 12*12mm 6 晶振 12MHz 1 电容 30pf 2 电阻 1KΩ 16 电阻 10KΩ 1 电阻 0Ω 11 自锁开关 3*3 1 排针 直针 4(根) LED 红色5*5mm 1 杜邦线 1组 4(根) 洞洞板 单面玻纤板10CM*14CM 1 洞洞板 单面玻纤板5CM*6CM 1 电池盒 1 PCB图 主板正面图(见附录1) 主板F5图(见附录2) 主板F6图(见附录3) 屏幕正面图(见附录4) 屏幕F5图(见附录5) 屏幕F6图(见附录6) 产品控制程序 /**************************************************************** 作品名称: 掌上游戏机(俄罗斯方块) 制作时间: 2016年6月21日 程序修改时间:2016年6月23日 程序基本框架完善 2016年6月25日 完成图形生成,简单移动 2016年6月29日 完善图形移动函数,添加图形生成数量 2016年7月1日 排除致命BUG 2016年7月2日 重新整理图形生成逻辑,重写图形生成函数 2016年7月3日 写出图形变形函数,游戏载入动画 2016年7月4日 排除已知BUG,完善游戏整体运行逻辑 *****************************************************************/ #includestc12c5a60s2.h #includestdlib.h sbit key_left=P3^4; //方向按键左 sbit key_right=P3^7; //方向按键右 sbit key_up=P3^5; //方向按键上 sbit key_down=P3^6; //方向按键下 sbit key_start=P3^3; //功能按键暂停,开始 sbit key_reset=P3^2; //功能按键复位 unsigned char shape[16][2]; //图形落地之前 unsigned char map[16][2]; //障碍物图形落地之后 //line用来在显示时候标记列数,shapeIndex用来记录当前形状,shapex、shapey用来记录图形所在位置 unsigned char line,shapeIndex,shapex,shapey; unsigned char code fk[2][2]={{1,1}, //方块 {1,1}}; unsigned char code sx1[4][4]={{0,1,0,0}, /

文档评论(0)

2266670 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档