基于51单片机8x8点阵贪吃蛇综合程设计报告.docVIP

基于51单片机8x8点阵贪吃蛇综合程设计报告.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于51单片机8x8点阵贪吃蛇综合程设计报告

《电子线路综合》 课程设计报告 设计课题: 贪吃蛇掌上游戏机 专业班级: 电子信息121班 学生姓名: 指导教师: 设计时间: 2015 .12 . 31 赣南师范学院科技学院数学与信息科学系 《 贪吃蛇掌上游戏机 》 一、设计任务与要求 基本功能: 制作一个8*8点阵的贪吃蛇游戏,系统以单片机的c语言的软件设计,系统通过LED点阵屏为载体显示数据,并用四个输入端表示四个控制键(上下左右)。系统硬件部分由STC89C52RC单片机,8*8点阵屏, 4个按键,软件部分在keil环境下用c51语言编写,包括游戏初始蛇的段数,以及障碍墙壁,游戏结束时自动复位。 具体要求: 1、用四个按钮控制蛇的方向,蛇的原始段数为2点,并设置墙壁。 2、蛇的移动速度随着蛇的段数增加而增加,当蛇碰到墙壁和自己的身体时死亡 3、用proteus设计,仿真基于STC89C52RC单片机的8*8点阵贪吃蛇的硬件电路。 4、蛇死亡,游戏结束,系统自动复位。 二、方案设计与论证 图1、系统框图 1、贪吃蛇的移动 当蛇没有吃到任何食物时,每次步进蛇头的将要到的下一个LED灯点亮,而蛇尾那个LED灯会灭掉,程序设计时只要将蛇尾那点位置的值传给蛇头下一个位置的值,再改变蛇尾的值即可。而蛇头下一个位置根据蛇头和偏移量来确定,每次上下左右按键决定了蛇步进的偏移量,只要将蛇头的位置加上偏移量的值即得到新的蛇头位置。当蛇头碰到四周的墙壁或者碰到自己的身体,小蛇就立即毙命并结束游戏。 2、食物的随机出现 食物的出现是一种随机行为,所以必须做一个随机数,而且食物出现的位置不能与蛇的位置相同,也不能超出墙外,否则就要重置食物。这里使用程序中的定时计数器的低八位 TL0的数值,由于TL0不断变化,不同的时间点数值不同,我这里使用的是C语言里的stdlib.h文件库,使用里面的随机函数srand(),先利用srand(TL0)获得TL0的数值,再利用两次rand()%8分别得到食物出现的横纵坐标的位置。 三、原理图及元器件清单 1.单位电路设计 (1)AT89C52单片机最小系统模块 本系统以STC89C52RC为核心加上复位电路和晶振电路组成,本系统选用12M的晶振,使得单片机有合理的运行速度。起振电容30pF对振荡器的频率高低,振荡器的稳定性和振荡器的快速性影响较合适复位电路为按键高电平复位。 图2、最小系统模块 (2)8*8点阵屏模块 LED点阵屏通过LED(发光二极管)组成,以灯珠亮灭来显示程序的运行情况,是模块化的显示组件,本设计采用8*8共阳红色点阵显示屏,用来显示贪吃蛇的游戏画面。 图3、8*8点阵屏模块 (3)独立按键模块 4个按键控制蛇的游走方向(上下左右)的功能简介明了 图4、独立键盘 (4)系统总原理图说明 贪吃蛇是一款经典的小游戏,玩家使用方向键控制一条很短(游戏刚开始)的蛇,通过不断的吃豆豆,蛇身会逐渐的加长,当蛇撞到身体或墙壁时游戏结束 图5、总原理图 2.元件清单 表1、元件清单 元件名称 符号 数值 单位 备注 单价(元/个) 电阻 R1—R8 10K 欧姆 1/4瓦 8 电解电容 C5 10 μF 电解,250v耐压 2 瓷片电容 C1-4 103 PF 50v耐压 4 8*8点阵屏 LED8*8 \ \ \ 1 晶振 X1 12 M 250v耐压 1 单片机 MUC1 \ \ STC89C52RC 1 按键 Key1-4 \ \ \ 4 二极管 D1-4 1N34A \ 正向导通压降约为0.2~0.3VProteus仿真完成后就进行硬件的安装。本设计按照原先设计好的电路图进行总体上的布置,采用人工搭电路的方法进行硬件的安装。安装时要考虑受热、稳固等多方面的影响使用电烙铁时要控制好焊接的时间,电烙铁停留的时间太短,焊锡不易完全熔化,形成“虚焊”,而焊接时间太长又容易损坏元器件,每一两秒内要焊好一个焊点,若没完成,宁愿等一会儿再焊一次。其次芯片的摆置要方便连线,焊接时要先把芯片拔出,等线接好了再插上去。在焊接时要考虑电路的抗干扰能力同时要充分考虑电源对单片机的影响。每焊接完一个模块,要用万能表根据电路图检查有没有接错、短路等现象,确认正确后再继续下一个模块 五、性能测试与分析 主程序工作流程如图3所示,系统上电后首先对LED进行初始化,接着对定时器初始化,并启动定时器,接着执行程序主体逻辑,程序主体逻辑执行一遍后检查是否有中断发生。中断源有两个,一个是驱动贪吃蛇自动前行的定时中断,另一个是用户控制贪吃蛇移动方向的键盘中断,任意中断的到来都将改变贪吃蛇的当前状态。若当前没有中断发生,主程序继续判断蛇头是否碰壁或

文档评论(0)

linjuanrong + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档