基于51单片机的简易游戏机

基于51单片机的简易游戏机

一、绪论

1.2课程设计的任务及设计要求
简易游戏机
(1)液晶显示制作人姓名、学号,院,班级及校徽等信息和图片;
(2)多个游戏选项(》1):贪吃蛇游戏、俄罗斯方块等;
(3)具有简单电子表功能,可显示年、月、日、星期、时、分、秒等(根据实际显示方式的不同,可选择部分或全部功能);
(4)具有电子表的校准功能;
(5)扩展功能:自定义其它功能,要求具有一定难度、创新性和综合性;
1.4设计实际所实现的功能
到目前,我所设计的简易游戏机实际所实现的功能有:
(1)贪吃蛇游戏:有地图设置、难度设置、音乐开关(音乐开关尚未完成)。
(2)俄罗斯方块(尚未完成)。
(3)电子表:可实时读取计算机时间,显示年、月、日、星期、时、分、秒。同时可对年、月、日、星期、时、分、秒进行调整。
(4)制作信息显示:显示制作人姓名、学号,院,班级及校徽等信息和图片。

二、设计方案

2.1总体设计方案
2.2.1 硬件部分
硬件采用AT89C55,单片机的P0口接上拉电阻作LCD12864的数据口,单片机的P2接各种按键,单片机的P3口中P3.4、P3.5、P3.6用来与DS1302通信,其余用来与LCD12864的通信。
2.2.2 软件部分之菜单
菜单采用四个按键进行操作,分别是:上、下、确认、取消。将菜单中所有出现的可能情况进行编号,编写按键扫描函数、然后对于不同的按键操作,产生不同的情况,进行不同的操作。在menu.h中声名了各种菜单中需要的函数,包括: 按键扫描函数, 选择函数,反白函数,游戏结束函数,菜单跳转函数等。这是一种一种用C语言实现的LCD 多级嵌套菜单结构。该结构紧凑、性能稳定可靠。[1]
2.2.3 软件部分之LCD12864
LCD12864是整个系统的显示核心,在12864.h中声明了各种关于LCD12864的函数,包括:延时函数、初始化函数、清屏函数、写数据函数、写字节函数、测忙函数、设置液晶坐标函数、写字函数、写数字函数等。
2.2.4软件部分之贪吃蛇游戏
在贪吃蛇游戏中,采用结构体来描述蛇,利用循环数组实现循环队列。采用定时器0工作在方式2,8位自动装初值,只计数不中断,用来产生随机数,即食物。采用定时器1工作在方式1,16位,10ms中断一次扫描键盘。首先是显示出贪吃蛇的边界,然后显示出蛇,再产生随机数(食物),如果产生的随机数刚好是边界和蛇,就重新产生,直到随机数不是边界和蛇本身,然后把食物显示出来。然后进入按键扫描的while循环中,只有按下返回键或游戏结束时才返回菜单。在while循环中,根据不同的难度,进行不同的延时,即难度越大,蛇移动越快。通过按键扫描确定蛇头下一个点的位置,及移动方向,当蛇头与食物重合时,食物重新产生,得分+1,当蛇头与身体或者边界重合时,游戏结束。

三、系统原理框图及模块的作用

在这里插入图片描述

四、硬件设计及说明

4.1具体元器件清单
在这里插入图片描述
在这里插入图片描述
4.2硬件电路原理图与硬件电路模块说明
4.2.1Proteus原理图
在这里插入图片描述

五、实际的程序流程图,写清楚程序模块的功能

在这里插入图片描述

六、系统使用说明

本系统在仿真运行后,即可看到菜单,第一层菜单有四个选项:贪吃蛇、俄罗斯方块、电子表、制作信息。通过上、下键可将黑块移到不同的选项下,通过确认键可进入选项。进入贪吃蛇选项后,可看到第二层菜单有四个选项:开始游戏、地图设置、难度设置、音乐开关。进入俄罗斯方块选项可玩俄罗斯方块游戏(尚未完成)。进入电子表选项,可以看到当前日期和时间,按设置键和上下键还可以对日期和时间进行调节。进入制作信息选项,可以看到作者的制作信息,包括校徽、学院、姓名、班级和学号。
本系统一共有七个按键,以下表格是按键说明书。
在这里插入图片描述

七、运行仿真

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

八、综合设计心得体会(收获,感想,建议和看法等)

九、参考文献

[1] 陆铮, 罗嘉. 单片机C语言下LCD多级菜单的一种实现方法[J]. 工矿自动化, 2006, 000(001):50-51.
附:简易游戏机Proteus仿真+Keil代码+说明文档
https://download.csdn.net/download/alongiii/14935529

  • 14
    点赞
  • 85
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论
16.基于51单片机的数码录音放音系统设计 17.基于51单片机的语音采集系统设计 18.基于51单片机的智能加湿控制器设计 19.基于51单片机的视力保护仪设计 20.基于51单片机简易电梯系统的设计 33.基于51单片机的信号发生器设计 36.基于51单片机的酒精检测仪设计 37.基于51单片机的电子秤设计 38.基于51单片机的出租车计价器的设计 86.基于51单片机的红外遥控器设计 87.基于51单片机的万年历设计 93.基于单片机的北斗定位无人机救火系统 94.基于单片机的导盲拐杖设计 95.基于单片机的电子琴设计 96.基于单片机的语音小车设计 97.基于单片机的指纹门禁设计 99.基于51单片机的贪吃蛇设计 100.基于51单片机的倒车雷达的设计 101.基于51单片机的汽车倒车防撞报警系统 102.基于单片机的电压电流表设计 103.基于51单片机的贪吃蛇游戏设计 104.基于51单片机的多功能电子时钟设计 107.基于51单片机的酒精气体检测器设计 117.基于51单片机的电子闹钟设计 118.基于51单片机简易计算器设计 119.基于51单片机的震动报警器设计 126.基于51单片机的1602显示带闹钟万年历设计 127.基于51单片机的热敏电阻数字温度计设计 131.基于51单片机的火灾报警系统设计 132.基于51单片机的计算器设计(带小数点) 133.基于51单片机的室内温湿度自动控制系统设计 134.基于单片机的粮仓远程监控系统的设计 135.基于单片机的汽车防碰撞系统设计与实现 136.基于单片机的智能储存柜的设计 137.基于单片机的红外非接触人体测温仪阈值报警液晶显示设计 138.基于51单片机的智能鱼缸设计 139.基于51单片机的wifi自动校时时钟设计 140.基于51单片机的水温(油温)可测液体温度的控制器设计 141.基于51单片机的红外报警器的设计与制作 142.基于单片机简易烘手机设计 143.基于单片机的燃气报警器的设计 144.基于51单片机的智能台灯设计 145.基于51单片机的电机控制设计 146.基于51单片机智能可控洗衣机设计 147.基于51单片机的脉搏测量仪设计

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

alongiii

万分感谢!!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值