益智小游戏设计与开发.docVIP

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

益智小游戏设计与开发   摘 要:单片微型计算机(简称单片机)作为微型计算机家族的一员,以其独特的结构,良好的稳定性,便宜的价格在嵌入式领域广泛应用。与传统的PC上设计的贪吃蛇游戏不同,本次利用Proteus硬件仿真软件,16×16双色LED点阵显示屏,以STC12C5A32S2单片机为主控芯片,由74HC595作为数据扫描、74HC138和9012PNP型三极管作为行驱动,经过实际测试,可以达到预期的实验效果。   关键词:单片机;LED;数据扫描   中图分类号:TP3-4;TN710-4 文献标识码:A 文章编号:1674-7712 (2014) 12-0000-01   “贪食蛇”又称为“贪吃蛇”,是一种益智小游戏。其游戏规则比较简单,就是一条小蛇,不停地在屏幕上游走去吃屏幕上出现的食物,越吃越长,到了一定的长度之后,就可以进入下一关,越到后面的关卡蛇移动的速度越快,只要蛇头碰到四周的墙壁或者碰到自己的身体,小蛇就立即毙命并结束游戏。利用16×16双色LED点阵显示屏,以STC12C5A32S2单片机为主控芯片,由74HC595作为数据扫描、74HC138和9012PNP型三极管作为行驱动。本显示屏带有四个基本按键、一个蜂鸣器、程序下载模块,不仅可作为显示屏显示使用,还可以作为开发板使用,能支持51系列芯片的下载。   一、硬件设计   (一)单片机核心模块   STC12C5A32S2是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单片机芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC12C5A32S2为众多嵌入式控制应用系统提供灵活、有效的解决方案。   下面对单片机的I/O口的分配做一下说明,单片机中用P1.0-P1.3和P3.3口与74HC154的8位数据输出口相接作为系统的行扫描驱动,P3.0-P3.1与4块74HC594相接通过不同的信号作为点阵的列扫描。P0.0-P0.3的4个IO口分别接4个独立按钮相连,P3.5与蜂鸣器相连,而P1.5-P1.7和复位键与程序下载电路相连。   (二)点阵模块   LED点阵模块采用四个8×8模块组成16行16列的显示屏,为解决串传输中列数据准备和列数据显示之间的矛盾,我们采用了74HC595作为列驱动。因为74HC595具有一个8bit的串入并出的移位寄存器和一个8bit输出锁存器的结构,而且为寄存器和输出锁存器的控制各自独立。这使得行数据准备和列数据显示可以同时进行。采用四个移位寄存器74HC595实现点阵的列扫描。由单片机P1口输出4bit二进制信号,并发出寄存器的打入信号行号经一个4/16移码器74HC138,生成16条行选通信号线,在和16个9012PNP型三极管实现对点阵的行扫描。由于单片机的TTL输出口的驱动能力非常有限,所以在每个输出口都加一个三极管,增加I/O口的驱动电流,用来驱动LED显示屏的行信号。为了保证LED亮度,一次驱动一列或一行时必须外加驱动电路提高电流。   二、软件设计   在本次开发中,采用了专门用于MCS.51系列单片机软件开发的C51语言,这种语言与普通C语言相同,并提供了针对单片机的常量定义、库函数等等。开发环境选择了Keil uVision2编译调试,硬件仿真软件Proteus 7.1仿真运行。   贪食蛇软件主要分成三个部分:主程序、外部中断服务程序、定时中断服务程序。主程序的作用是一些初始化工作及蛇体动作执行、食物的随机产生、得分累计、图像显示等。外部中断服务程序的功能是识别按键。定时中断服务程序的作用是定时产生步进信号。外部中断服务程序与主程序之间联系的纽带是全局变量MovDirection,键盘中断服务程序每次执行都要把按键对应的方向更新到此变量,而主程序每次步进方向都以此变量为依据。定时中断服务程序通过全局变量IsToStep与主程序联系起来,主程序只有在IsToStep为1时才让蛇体步进,且步进后将该变量置0,定时中断服务程序每隔一段时间为IsToStep置位,使主程序得到步进信号。   三、系统仿真   Proteus软件具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能,同时有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。   在Proteus软件的ISIS中新建设计图,画出本设计的电路图。电路设计完成后就可以进行仿真。先双击单片机,把用uVision3编译生成的HEX文件指定为下载文

文档评论(0)

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

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

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档