单片机拔河游戏机课程设计_第1页
单片机拔河游戏机课程设计_第2页
单片机拔河游戏机课程设计_第3页
单片机拔河游戏机课程设计_第4页
单片机拔河游戏机课程设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、HUBEI NORMAL UNIVERSIT Y课程设计报告Course Desig n Report所在院系教育信息与技术学院专业名称信息工程班级0902题目拔河游戏机指导教师田文汇成员孙强魏超罗志伟完成时间2011,12,10一、设计任务及要求:设计任务:设计一个拔河游戏机电路。要 求:(1)设计一个能进行拔河游戏的电路。(2)电路使用15个发光 二极管,开机后只有中间一个发亮,此即拔河的中心点。(3)游戏双方各持一个按钮,迅速地、不断地按动,产生脉冲,谁按得快,亮点 就向谁的方向移动,每按一次,亮点移动一次。(4)亮点移到任一方 终端二极管时,这一方就获胜,此时双方按钮均无作用,输出保持

2、, 只有复位后才使亮点恢复到中心。(5)用数码管显示获胜者的盘数。指导教师签名:2011 年11月10日二、指导教师评语:指导教师签名:2011 年11月日三、成绩验收盖章2011年11月日1设计目的2设计思路3设计过程方案论证电路设计4电路仿真与结果分析 电路仿真结果分析5主要仪器与设备 6设计体会与建议 设计体会对设计的建议参考文献附件完整电路PCB原理图拔河游戏机1设计目的(1)熟悉巩固和加深所学电子技术课程的基本知识,提高综合运用所学知识的 能力。(2)培养学生根据课题需要选用参考书、查阅手册、图表和文献资料的能力, 提高学生独立解决工程实际问题的能力。(3)通过设计方案的分析比较、设

3、计计算、元件选择及电路安装调试等环节, 初步掌握单实用电路的工程设计方法。(4)提高学生的动手能力,掌握常用仪器设备的正确使用方法,学会对简单实 用电路的实验调试和对整机指标的测试方法。(5)了解与课题有关的电路以及元器件的工程技术规范,能按课程设计任务书 的要求编写设计说明书,能正确反映设计和实验成果,能正确绘制电路图等。2设计思路15个二极管排成一条直线,两边各装一个按键,每按一次按键,就会产生一 个有效低电平,哪边按一次,发光二极管就向哪边移一位。安装一个复位开关,第一次按是让发光二极管回到中点,再按一下后,蜂鸣 器发出响声,两边选手就可以拔河了。当发光二极管移到终端时,两边选手按键无效

4、,数码管就会记录一下对应的 盘数。再按复位键,以进行下次的拔河。再用一个清零键,用于让记录盘数的数码管清零,同时发光二极管也回到中 点。3设计过程我的电路分为五个部分,数码管,蜂鸣器,清零部分,拔河部分,发光二极 管。数码管主要用于显示双方的盘数,蜂鸣器用于提醒选手拔河开始或拔河结束, 清零部分用于对数码管清零和发光二极管复位,拔河部分用于控制发光二极管的 移动,发光二极管显示拔河的状态,当终点亮时,数码管计数。按两次复位键后,蜂鸣器响起,两边选手开始拔河。当发光二极管移到左端 终点时,选手按键无效,左边的数码管计一次数。按两次复位键,继续拔河,当 发光二极管移到右端终点时,选手按键无效,右边

5、的数码管计一次数。如果是3局2胜制,当有一方已赢了 2局后,复位键也无效,需要按一下清零键。电路设计数码管蜂鸣器清零部分拔河部分发光二极管4 电路仿真与结果分析电路仿真1、按下复位键,观察发光二极管是否在中点,如果在中点,则再按下复位 键。2 、任意随机的按 key1 和 key2 ,直到发光二极管移到终点。3 、观察数码管,看计数是否正确。4 、按两次复位键,重复上述步骤。5 、按下清零键,看数码管数据是否清零,发光二极管是否也回到中点。如 果达到预期,则实验成功。结果分析仿真时数码管没有亮, 经过分析后知道是错用了共阴极数码管, 改用共阳极 的后数码管有显示了。然后进行拔河游戏过程,但是发

6、光二极管从 P0 口进入到 P2 口或从P2 口进入到P0 口后,发光二极管移位出现了混乱,而且不能到达终 点,原因是程序没有写好。认真修改了程序后,移位正常了。但是数码管不能实 现清零,把清零方式由电平清零改为脉冲式清零后,可以正常清屏了。5 主要仪器与设备发光二极管 led X 15, 电阻 510 欧X 15, 7SEG-MPX2-CAK 1,AT89C52X 1, 极性电容 CAP-POI22uFX 2, 电容 30pFX 2, 蜂鸣器 BUZZEX 1, 晶振 CRYSTAL 1, RESPACK-X 1, PNP X 1, 电阻 1000欧X 2, BUTTON X1。6 设计体会

7、与建议设计体会对设计的建议参考文献1吴健:AVF单片机实用C语言程序设计与典型实例M,北京中国电 力出版社, 2008。2马潮:AVR单片机嵌入式系统原理与应用M,北京韩天航空大学出版社, 2007。附件#include#include#define uchar unsigned char#define uint unsigned intsbit wela1=P3A0;sbit wela2=P3A1;sbit beep=P3A5;sbit key=P3A4;sbit key1=P3A2;sbit key2=P3A3;uchar n,m,temp1,temp2,a,b,num;uint n1=0

8、,n2=0;void key_init();uchar code table=0xc0,0xf9,0xa4,0xb0,0x99, 0x92,0x82,0xf8,0x80,0x90;void delay(uchar z)uchar x,y;for(x=z;x0;x-)for(y=120;y0;y-);void di(void)beep=0;delay(10);beep=1;void disp(uchar shi,uchar ge) wela1=1;P1=tableshi;delay(10);wela1=0;wela2=1;P1=tablege;delay(10);wela2=0;void key

9、_init()if(key=0)delay(5);if(key=0)while(!key); temp1=0x7f; temp2=0xff;di();P0=temp1;P2=temp2;num+;if(num=3)num=0;if(num=2)if(key1=0)delay(5);if(key1=0)while(!key1);if(temp1=0xff)if(temp2=0xfe)temp2=0xff;P2=temp2;temp1=0x7f;P0=temp1;if(temp2!=0xff)temp2=_cror_(temp2,1);P2=temp2;elsetemp1=_cror_(temp1,1);P0=temp1;a=1; / 用于跳出 P0=0xfe 的循环if(key2=0)delay(5);if(key2=0) while(!key2);if(temp2=0xff) if(P0=0x7f) temp1=0xff;P0=temp1; temp2=0xfe;P2=temp2; if(temp1!=0xff)temp1=_crol_(temp1,1);P0=temp1;elsetemp2=_crol_(temp2,1);P2=temp2;b=1; / 用于跳出 P2=0xbf 的循环 if(P0=0xfe&a=1)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论