- 1、本文档共58页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
推箱子游戏-51单片机课设计(最全)
《51单片机》
课程设计
题 目:基于51单片机的推箱子游戏设计
目 录
1、课程设计目的 1
2、课程设计题目和实现目标 1
3、设计方案 1
4、Proteus仿真原理图 7
5、程序设计 9
6、调试总结 28
7、设计心得体会 28
参考文献 29
附录:程序代码------------------------------------------------------------------29
1、课程设计目的
《MCS-51单片机》课程设计是与《MCS-51单片机》课程相配套的实践教学环节。《MCS-51单片机》是一门实践性很强的专业基础课,通过课程设计,达到进一步理解单片机的硬件、软件和综合应用方面的知识,培养实践能力和综合应用能力,开拓学习积极性、主动性,学会灵活运用已经学过的知识,并能不断接受新的知识。培养大胆发明创造的设计理念,为今后就业打下良好的基础。
通过课程设计,掌握以下知识和技能:
单片机应用系统的总体方案的设计;
单片机应用系统的硬件设计;
单片机应用系统的软件程序设计;
单片机开发系统的应用和调试能力
课程设计题目和实现目标
2.1 课程设计题目:基于51单片机的推箱子游戏设计
2.2实现目标
设计一款在以51单片机为核心的硬件系统中运行的推箱子游戏。游戏一共9关,功能包括:
(1)显示游戏开机界面和游戏界面;
(2)按键处理包括移动小人和移动箱子,通过移动上下左右键来控制小人的移动,通过小人推动箱子,把箱子推到指定的目的地为过关,箱子只能推不能拉;
(3)用于可以任意选关,并能随时退出、进入游戏;
(4)每一关都有时间计时,显示当前玩家的游戏耗时。
3、设计方案
根据设计目标,整个系统框图如下:
图1 系统框图
3.1 控制模块
选用ATMEL公司 是一个低电压,高性能CMOS 8位单片机,兼容MCS51指令系统
2、8k可反复擦写(大于1000次)Flash
7、2个串行中断,可编程UART串行通道;
8、2个外部中断源,共8个中断源;
9、2个读写中断口线,3级加密位;
低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;
图2 引脚功能
图3 最小系统
U1:AT89C52,DIPf封装;C1,C2:22pf瓷片电容
C3:10uf电解电容;X1:12M晶振
R1:10K金属膜电阻
3.2 显示模块
选用内置T6963C控制控制器的12864图形点阵液晶(以下简称Lcd12864)做为显示模块。
T6963C控制器的最大特点具是有硬件初始值设置功能,显示驱动所需的参数,例如:占空比系数、每行驱动传输的字节数、字符的字体选择等均由引脚电平设置。所以,液晶显示模块在上电时T6963C控制器就进行初始化设置,软件操作的主要精力就可以全部用于显示界面的设计上。
市场上出售此控制器的液晶很多,本次课设选用深圳市晶日达科技有限公司生产KXM12864F.
LCD12864和单片机以模拟方式连接,即通过模拟操作时序的方法控制液晶显示。具体的接线图如图4所示
图4 显示模块
RP1:1k排阻,用于做P0口的上拉电阻;LCD1:KXM12864F
3.3按键模块
16个轻触按键连接成4*4矩阵键盘,做为按键模块,如图5所示
图5 4*4矩阵键盘
最终系统的硬件系统如下:
图6 硬件系统
Proteus仿真原理图
在proteus搭建的仿真原理图如下:
图7 硬件系统
图8 开机画面
图9 游戏画面
图10 游戏画面
程序设计
5.1 Lcd12864显示驱动程序
图11 读写指令/数据时序图
准备向Lcd12864进行操作时,首先要读取lcd12864的当前的状态,只有lcd12864不忙的时候才能读写操作和数据。相关程序如下:
/**************************************************
函数名:status_bit_01()
功能:状态位sta1(读/写指令),sta0(读/写数据)判断
入口参数:
返回值:状态值i
***************************************************/
unsigned char status_bit_01()
{
unsigned char i;
P0=0xff;
cd=1;
rd=0;
for(i=10;i0;i--)
{
if((P10x03)==0x03)
break;
您可能关注的文档
- 打造学校展的核心竞争力.doc
- 打造和建设现代酒店管理民族品牌.doc
- 执行力课方案列示.doc
- 托克托铁路专用施工组织设计.doc
- 扩声系统声学特性计算机辅助设计报小礼堂设计.doc
- 扩展有限元法究综述-毕业论文.doc
- 扬州世纪花内商业步行街商铺开盘操作方案.doc
- 扬州华夏房地产开发有限公司嘉和(安装工程)施工方案.doc
- 扬州大学图书馆开展深入学习实践科发展观活动实施方案.doc
- 扬州中凌高科项初步定位策划竞标报告.doc
- 中国国家标准 GB/T 45390-2025动力锂电池生产设备通信接口要求.pdf
- 中国国家标准 GB/T 45393.2-2025信息技术 建筑信息模型(BIM)软件 第2部分:参数化模型.pdf
- GB/T 45393.2-2025信息技术 建筑信息模型(BIM)软件 第2部分:参数化模型.pdf
- 《GB/T 45393.2-2025信息技术 建筑信息模型(BIM)软件 第2部分:参数化模型》.pdf
- GB/T 10184-2025电站锅炉性能试验规程.pdf
- 海尔智家股份有限公司海外监管公告 - 海尔智家股份有限公司2024年度环境、社会及管治报告.pdf
- 上海复旦张江生物医药股份有限公司2024 环境、社会及管治报告.pdf
- 中国邮政储蓄银行股份有限公司中国邮政储蓄银行2024年可持续发展报告.pdf
- 豫园股份:2024年环境、社会及管治(ESG)报告.pdf
- 南京熊猫电子股份有限公司海外监管公告 - 2024年度环境、社会及治理(ESG)报告.pdf
文档评论(0)