跑马灯游戏机的设计交大理工Word格式.docx

上传人:b****3 文档编号:6437093 上传时间:2023-05-06 格式:DOCX 页数:23 大小:954.58KB
下载 相关 举报
跑马灯游戏机的设计交大理工Word格式.docx_第1页
第1页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第2页
第2页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第3页
第3页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第4页
第4页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第5页
第5页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第6页
第6页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第7页
第7页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第8页
第8页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第9页
第9页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第10页
第10页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第11页
第11页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第12页
第12页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第13页
第13页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第14页
第14页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第15页
第15页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第16页
第16页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第17页
第17页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第18页
第18页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第19页
第19页 / 共23页
跑马灯游戏机的设计交大理工Word格式.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

跑马灯游戏机的设计交大理工Word格式.docx

《跑马灯游戏机的设计交大理工Word格式.docx》由会员分享,可在线阅读,更多相关《跑马灯游戏机的设计交大理工Word格式.docx(23页珍藏版)》请在冰点文库上搜索。

跑马灯游戏机的设计交大理工Word格式.docx

工作量饱满评价

5

6

设计中创新性评价

7

论文书写规范化评价

8

综合应用能力评价

综合评定等级

课程设计(论文)评阅意见

评阅人陈芳 职称讲师

2015年1月21日

目 录

第1章课程设计内容及要求4

第2章硬件电路设计5

2.1数字时钟原理图5

2.2系统硬件说明5

2.2.1电源5

2.2.2AT89C2051单片机及其引脚说明5

2.2.3LED数码管结构原理图6

2.3时钟各部分电路设计7

2.3.1复位电路7

2.3.2时钟电路8

2.3.3驱动电路9

2.3.4限流电路9

第3章软件设计11

3.1Keil软件介绍11

3.2建工程11

3.3程序设计19

第4章系统调试21

4.1仿真实现图21

4.2电路板正面22

4.3电路板反面23

4.4读入程序后现象24

第5章课程设计心得25

参考文献(资料)26

致谢27

第1章课程设计内容及要求

设计内容:

此课程设计的课题为跑马灯游戏机设计,设计内容是:

由单片机I/O口控制发光二极管(LED)依次点亮短暂延时后熄灭,周而复始。

当外部功能按键(连接于INT0/1)作用时,分别实现开始、停止功能。

具体过程为:

按开始键,LED循环显示,按停止键时,LED循环状态暂停,若正巧最后一个LED被点亮,而其它LED皆熄灭时,表示该操作人获胜,赢得游戏,同时蜂鸣器鸣响2秒,以示庆祝,反之则蜂鸣器鸣响500ms示意输掉游戏。

下次按下开始后,游戏仍能继续。

设计要求:

(1)要求学生掌握单片机I/O口和外部中断等资源的使用,并实现由外部输入信号如何控制输出信号的功能。

(2)要求学生用所提供的元件来完成对跑马灯游戏机的硬件设计。

(3)要求学生用所学语言(汇编语言或C语言)来完成跑马灯游戏机的软件设计。

(4)要求学生掌握电路调试的方法,培养解决实际问题的能力。

第2章硬件电路设计

2.1数字时钟原理图:

图2-1数字时钟电路原理图

2.2系统硬件说明

2.2.1电源:

电源部分有二部分组成.一部分是由220V的市电通过变压,整流稳压来得到+5V电压维持系统的正常工作;

另一部分是由3V的电池供电,以保证停电时正常计时.正常情况下电池是不提供电能的,以保证电池的寿命。

2.2.2AT89C2051单片机及其引脚说明

(1)AT89C2051单片机是51系列单片机的一个成员,是8051单片机的简化版.内

部自带2K字节可编程FLASH存储器的低电压,高性能COMS八位微处理器,与Intel

MCS-51系列单片机的指令和输出管脚相兼容.由于将多功能八位CPU和闪速存储器结

合在单个芯片中,因此,AT89C2051构成的单片机系统是具有结构最简单,造价最低廉,

效率最高的微控制系统,省去了外部的RAM,ROM和接口器件,减少了硬件开销,节省了

成本,提高了系统的性价比.

(2)引脚说明

图2-2AT89C2051引脚图

1.VCC电源电压;

2.GND接地;

3.RST复位输入.当RST变为高电平并保持2个机器周期时,所有I/O引脚复位至"

1"

;

4.XTAL1反向振荡放大器的输入及内部时钟工作电路的输入;

XTAL2来自反向振荡放大器的输出。

5.P1口8位双向I/O口.引脚P1.2~P1.7提供内部上拉,当作为输入并被外部下拉为低电平时,它们将输出电流,这是因内部上拉的缘故.P1.0和P1.1需要外部上拉,可用作片内精确模拟比较器的正向输入(AIN0)和反向输入(AIN1),P1口输出缓冲器能接收20mA的灌电流,并能直接驱动LED显示器;

P1口引脚写入"

后,可用作输入.在闪速编程与编程校验期间,P1口也可接收编码数据。

6.P3口引脚P3.0~P3.5与P3.7为7个带内部上拉的双向I/0引脚.P3.6在内部已与片内比较器输出相连,不能作为通用I/O引脚访问.P3口的输出缓冲器能接收20mA的灌电流;

P3口写入"

后,内部上拉,可用作输入P3口也可用作特殊功能口,P3口同时也可为闪速存储器编程和编程校验接收控制信号。

P3.5T1(定时器1外部输入)

P3.4T0(定时器0外部输入)

P3.3(外部中断1)

P3.2(外部中断0)

P3.1TXD(串行输出口)

P3.0RXD(串行输入口)

2.2.3LED数码管结构原理图

LED显示数码管通常由硬件7段译码集成电路,完成从数字到显示码的译码驱动.本系统采用软件译码,以减小体积,降低成本和功耗,软件译码的另一优势还在于比硬件译码有更大的灵活性.所谓软件译码,即由单片机软件完成从数字到显示码的转换.从LED数码管结构原理可知,为了显示字符,要为LED显示数码管提供显示段码,组成一个"

8"

字形字符的7段,再加上1个小数点位,共计8段,因此提供给LED数码管的显示段码为1个字节.

各段码位与显示段的对应关系如下:

abcdefgdp

显示段D0D1D2D3D4D5D6D7

段码位(共阳段码)90H80HF8H82H92H99HB0HA4HF9HCOH

字型9876543210

图2-3数码管引脚图

图2-4共阳极LED数码管内部结构原理图

2.3时钟各部分电路设计

2.3.1复位电路

上电复位:

只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。

上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。

为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。

手动复位:

按键后,电容器被短路放电,RST直接和VCC相连,就是高电平,此时进入“复位状态”。

松手后,电源开始对电容器充电,此时,充电电流在电阻上,形成高电平送到RST,仍然是“复位状态”;

稍后,充电结束,电流降为0,电阻上的电压也将为0,RST降为低电平,开始正常工作。

图2-5复位电路图

2.3.2时钟电路

AT89C2051单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反向放大器的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。

这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器。

图2-6时钟电路图

2.3.3驱动电路

数码管需要的工作电流大,单片机的驱动电流不够。

三极管的基极通过4.7K的电阻与单片机的I/O口相连,利用单片机的输出,做三极管的基极驱动,发射极接电源,做输出的驱动,输出更高的电压和大的电流。

集电极与数码管的公共端相连。

三极管起到对电流电压进行放大达到数码管额定值的作用。

图2-7三极管驱动电路图

2.3.4限流电路

数码管的abcdefg各段分别通过510欧的电阻接单片机的P1.0-P1.6引脚(段选)。

其中,通过这7个电阻达到限流的作用。

图2-8数码管接线图

第3章软件设计

3.1Keil软件介绍

KeiluVision2是德国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统c语言的语法来开发,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用,而且大大的提高了工作效率和项目开发周期,他还能嵌入汇编,您可以在关键的位置嵌入,使程序达到接近于汇编的工作效率。

KEILC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。

C51编译器的功能不断增强,使你可以更加贴近CPU本身,及其它的衍生产品。

C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:

编译器,汇编器,实时操作系统,项目管理器,调试器。

uVision2IDE可为它们提供单一而灵活的开发环境。

3.2建工程

1.双击启动桌面的KeiluVision2

进入下面的界面

2.点击“Project->

NewProject…”菜单,出现对话框,要求选择保存工程的文件夹并给将要建立的工程起一个名字,输入之后点击保存。

3.点击上面的保存之后跳出如下的对话框,这个时候需要我们对我们的单片机的型号进行选择,我们就选Atmel的AT89C2051选择之后点击“确定”。

4.接上一步点击“确定之后”,跳出如下的对话框。

这个时候是问我们是否添加那个仿真配置文件的,我们就选择“否”。

好了。

我们的工程已经建立成功。

如下图:

5.有了工程之后,我们需要给我们的工程写程序。

那就点击“FileNew”在工程管理器的右侧打开一个新的文件输入窗口Text1,在这个窗口里输入源程序。

输入程序如下:

输入完毕之后,选择“FileSave”,给这个文件取名保存,取名字的时候必须要加上扩展名,一般C语言程序均以“.C”为扩展名,这里将其命名为Text1.c,保存完毕后可以将该文件关闭。

到这里。

我们就已经建立好c语言的文件了。

6.建立好工程、建立好c语言的文件之后,我们就需要将这个c语言的文件添加到我们的工程来。

点击“SourceGroup1”使其反白显示,然后,点击鼠标右键,出现一个下拉菜单,如图所示,选中其中的“AddfiletoGroup”SourceGroup1”,出现一个对话框,要求寻找源文件Text1.c。

找到源文件Text1.c之后。

点击“Add”,还有“Close”,将其关闭。

这个时候,我们会发现“SourceGroup1”的前面多了个“+”好,表明我们已经将源文件Text1.c添加到我们的工程来。

点击“+”可以看到Text1.c已经在工程里。

打开我们建立的源文件Text1.c。

双击这个

就可以将文件打开。

打开之后,我们会发现。

文件的关键字的颜色已经改变了。

这个是我们keil编程软件设定好的,方便我们进行编写、查看等。

到目前为止,我们已经建立整个工程。

并写好程序了。

但是单片机不能识别我们编写的C程序,只识别HEX和BIN格式的文件。

所以需要我们对我们的程序进行设置编译输出。

选中“Target1”,并右击选择“optionsforTarget‘Target1’”,会弹出下面的对话框。

选择“output”选项卡,将”createHEXfile”项打钩,点”确定”。

我们就设置好输出了。

当我们点编译的时候就会在我们的文件夹里生成”.HEX”文件了。

3.3程序设计

#include<

reg51.h>

intrins.h>

voiddelay(unsignedinti);

intDelayCNT;

unsignedcharcodeDisp_Tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

unsignedcharcodedispbit[6]={0xdf,0xef,0xf7,0xfb,0xfd,0xfe};

main()

{

unsignedinti,a=0;

unsignedintLedOut[6];

DelayCNT=0;

while

(1)

{

if(++DelayCNT>

=28)

DelayCNT=0;

a++;

}

LedOut[5]=Disp_Tab[a%60%10];

LedOut[4]=Disp_Tab[a%60/10];

LedOut[3]=Disp_Tab[a%3600/60%10];

LedOut[2]=Disp_Tab[a%3600/60/10];

LedOut[1]=Disp_Tab[a/3600%10];

LedOut[0]=Disp_Tab[a/3600/10];

for(i=0;

i<

6;

i++)

P3=dispbit[i];

P1=LedOut[i];

delay(5);

}

}

voiddelay(unsignedinti)

{

intj;

for(i;

i>

0;

i--)

for(j=110;

j>

j--);

}

第4章系统调试

4.1仿真实现图

图4-1仿真实现图

4.2电路板正面

图4-2电路板正面图

4.3电路板反面

图4-3电路板反面图

4.4读入程序后现象

图4-4读入程序后正面图

第5章课程设计心得

此次课程设计,是我们一个学期,学习单片机以来的小结,

总体上来说是顺利完成了,但由于自己的理论知识和实践操作水平有限,致使作品所实现功能的过程中出现了很多问题,不过经过仔细的核对排查,并从中吸取经验解决了很多设计时出现的问题。

许多同学的焊接板子,均不能正常运行,而我的还算一切正常,虽不能幸灾乐祸,但是心中还是有一丝慰藉,毕竟自己辛辛苦苦的焊接了两天,吸了很多毒,...至少自己的东西有所收获!

其中,焊接也不是十分牢靠,线路跳线太多,焊接不专业,经常断线,虚焊假焊时有发生,以及单片机底座跟单片机接触不良等.....造成许多不确定因素,这些问题我们都应该认认真真的解决!

参考文献(资料)

[1]谢希仁计算机网络(第五版)[M].北京:

电子工业出版社,2008年2月

[2]胡小强计算机网络[M]北京:

北京邮电大学出版社2005年1月

[3]牟琦微机原理与接口技术.北京:

清华大学出版社,2002

[4]张毅坤单片微型计算机与接口技术.西安:

西安电子科技大学出版社2002年

[5]李群芳单片微型计算机与接口技术北京:

电子工业出版社2005年

[6]梅丽凤单片机原理与接口技术北京:

清华大学出版社,2004年

[7]魏坚华微型计算机与接口技术教程北京:

北京航空航天大学出版社,2002年

[8]张毅刚新编MCS-51单片机应用设计(第二版)哈尔滨:

哈尔滨工业出版社,2003

[9]张振荣MCS—51单片机原理及实现技术北京:

人民邮电出版社2000

[10]于锡之单片机应用系统抗干扰技术北京:

北京航空航天大学出版社,2000

[11]何利民单片机原理及接口技术北京:

北京航空航天大学出版社,1993

[12]蔡美琴mcs-51系列单片机及其应用(第二版)北京:

高等教育出版社,2004

[13]李华mcs-51系列单片机实用接口技术北京北京航空航天出版社,1993

[14]赵亮单片机c语言编程实例北京:

北京航空航天大学出版社,2006

[15]刘守义单片机应用技术西安:

西安电子科技大学出版社,2006

[16]周坚单片机的c语言轻松入门北京:

北京航空航天大学出版社,2005

[17]李群芳单片机原理,接口及应用北京:

清华大学出版社2005

[18]胡汉才单片机原理及其接口技术北京:

清华大学出版社。

1996

致谢

此次有所收获,离不开陈老师的指导教育,是她的细心,让我从一点点的错误中爬出来,是她负责的讲课,将我变成不再是一名“无知”学生,在这里感谢陪伴在身边的陈老师,还有各位一同进步的同学们!

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 其它

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2