您好,欢迎访问三七文档
中北大学课程设计任务书学生姓名:学号:学院:信息与通信工程学院专业:电子信息工程题目:专业综合实践之单片机系统部分:篮球计分器设计指导教师:王伟职称:副教授2015年12月28日中北大学课程设计任务书2015/2016学年第一学期学院:信息与通信工程学院专业:电子信息工程学生姓名:学号:学生姓名:学号:学生姓名:学号:题目:专业综合实践之单片机系统部分:篮球计分器设计起迄日期:12月28日~1月8日课程设计地点:中北大学指导教师:王伟张敏娟系主任:王浩全下达任务书日期:2015年12月28日课程设计任务书1.设计目的:在学习专业基础课和专业课的基础上,主要在电子仪器、微机综合设计与实践、单片机与A/D和D/A和光、计、电综合应用等几个方面开展实践活动,巩固所学知识、培养动手能力。2.设计内容和要求(包括原始数据、技术参数、条件、设计要求等):1.设计一款能够显示篮球比分的记分牌。2.通过加分按钮可以给A队,或B队加分。3.设计对调功能,更换场地后,AB队分数互换。4.增加局数比分功能。5.增加比赛时间倒计时功能。6.其他功能。3.设计工作任务及工作量的要求〔包括课程设计计算说明书(论文)、图纸、实物样品等〕:1)设计说明书符合要求;2)相应器件的工作原理及应用;3)系统工作原理图;4)参考文献原文不少于3篇。课程设计任务书4.主要参考文献:[1]万文略编著.单片机原理及应用[M].重庆:重庆大学出版社,2004.[2]孙德文编著.微型计算机技术[M].北京:高等教育出版社,2005.[3]张建勋编著.C语言程序设计教程[M].北京:清华大学出版社,2008.[4]于海生编著.计算机控制技术[M].北京:机械工业出版社,2007.[5]唐俊翟编著.单片机原理及应用[M].北京:冶金工业出版社,2003.[6]彭为编著.单片机典型系统应用设计实例精讲[M].北京:电子工业出版社,2006.5.设计成果形式及要求:设计说明书及相关电路图6.工作计划及进度:12月28日~12月31日:查阅资料;1月1日~1月5日:方案设计、实验验证;1月6日~1月7日:完成课程设计说明书;1月8日:答辩。系主任审查意见:签字:年月日目录1概述...................................................12硬件方案设计及描述.....................................13软件设计流程及描述.....................................44运行结果..............................................145总结..................................................16参考文献................................................18附录....................................................1911概述1.1设计意义目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。通过此次基于单片机设计的篮球计时计分系统,我们可以更清楚详细的了解单片机程序设计的基本指令功能、编程步骤和技巧来讲述单片机编程,并对AT89S51单片机的结构和原理进行讲述,以及基于单片机开发应用的相关芯片的工作原理,和相关外围电路的设计和调试过程进一步了解,有助于今后的工作和学习生活。本次设计用由AT89S51编程控制LCD作显示的球赛计时计分系统。该系统具有赛程时间暂停,及时刷新甲、乙双方的成绩等功能。它具有价格低廉,性能稳定,操作方便并且易于携带等特点。广泛适合各类学校或者小型团体作为赛程计时计分。1.2系统的主要功能本系统有三项主要主要功能:1.设计一款能够显示篮球比分的记分牌。2.通过加分按钮可以给A队,或B队加分。3.设计对调功能,更换场地后,AB队分数互换。4.增加局数比分功能。5.增加比赛时间倒计时功能。2硬件方案设计及描述2.1方案选择及设计思想通过分析之后我们觉得此次设计主要是两大模块,一是系统显示模块,二是单片机设计模块,在显示模块的设计中,开始想到了常用的LED显示,但是考虑的后续硬件实现的复杂性(超过10以上的LED实物连接将十分复杂),于是选取了方便但是没有接触过的LCD显示,因此也导致了一定程度的难度,在选取单片2机方面,我们选取了课堂上讲授的51单片机,对于简单的输入和输出控制,51机显然最合适,51单片机是8位的,采用总线结构,但是具有变成控制简便,接口简单,工作可靠,价格经济,能耗少,容易实现系统小型化等特点。因为篮球计分系统电路结构比较简单,只有按键控制和数码显示两个部分,P0口接12个开关,分别作为比分的加一,加二,加三,减一,设置节次,暂停,交换场地的按键控制。P2口和P3口控制LCD的比分及时间显示。该系统包括AT89S51,时钟及复位电路,按键电路,及LCD显示器。该电路控制简单,清晰明了,用LCD液晶显示,避免了用LED的复杂接线,便于实体硬件电路的焊接。2.2原理框图1602aLCD3图1.1原理图2.3工作原理LCD显示器该显示器的RS,RW,E端与P2相连,引脚的作用分别是:RS=0输入指令,RS=1输入数据,RW=0向LCD写入指令或数据,RW=1从LCD读取信息,E是使能信号。D0~D7与P3相连是数据总线。时钟电路时钟电路在单片机系统中起着非常重要的作用,是为保证系统正常工作的基础,在一个单片机系统中,时钟是保障系统正常工作的基准震荡定时信号,主要有晶振和外围电路组成,晶振频率大小决定单片机的快慢,我们这里采用的是12MHZ,另外有2个30P的电容。复位电路单片机系统的复位电路我们采用的是上电加按钮的复位电路形式,电阻采用220欧的阻值,采用22μ的电容。按键电路本设计共有12个设置按键,分别为+1,+2,+3,-1,暂停,设置节次按键和交换场次按键。2.4电路图AT89S51LCD显示器复位电路时钟电路按键电路43软件设计流程及描述3.1系统模块层次结构图主函数定时器初始化函数化函数写指令函数写字符函数LCD初始化函数写数据函数按键扫描函数延时函数显示时间函数读忙信号判断函数53.2程序流程图NY开始定时器0,LCD初始化显示当前时间读取P0口的值是否有按键按下哪个按键按下加二加三减一暂停节次交换场次待按键释放将时间,分数,节次经P2,P3口输出显示加一63.3源程序代码#includereg51.h#includeintrins.h//_nop_();延时函数用#defineucharunsignedchar#defineuintunsignedint#defineLcd_PortP3//定义数据端口#defineKEY_IOP0//键盘接口sbitRS=P2^1;//定义和LCM的连接端口sbitRW=P2^2;sbitE=P2^5;sbitBusy=P3^7;sbitspeaker=P1^0;uchardatakeytemp,key;ucharL=0;uchark=0;ucharc=0;ucharb=0;ucharj=0;uchare=1;uchard=0;ucharhour=24;ucharhour1=0;ucharmin=11;ucharsec=59;//赋初值uchardataflag=0x00;bitflag_key=0;ucharcodeLcddata[]={0123456789:};//ucharcodeLcddata[12]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff,0xbf};/*******************************************************************************************函数名称:Timer0Init*功能描述:定时器0初始化******************************************************************************************/voidTimer0Init(void){TMOD=0x11;TH0=0x3c;TL0=0xb0;TH1=-10300/256;TL1=-10300%256;//25MS定时初值(T1计时用)ET0=1;ET1=1;7TR0=1;TR1=1;EA=1;}/*******************************************************************************************函数名称:IsrTimer0*功能描述:T050mS中断程序******************************************************************************************/voidIsrTimer0(void)interrupt1using1//T050mS中断程序{staticucharcount=0;TH0=0x3c;TL0=0xb0;count++;if(count==20)//定时1s时间到{count=0;sec--;if(sec==0)//1分钟时间到{if(min==0)//1小时时间到{min=0;EA=0;speaker=~speaker;}else{sec=59;min--;}}}}voidIsrTimer1(void)interrupt3using3//T150mS中断程序{uchari=0,m=0,a=0;staticucharta20ms=0;TH1=-10300/256;TL1=-10300%256;ta20ms++;if(ta20ms==1)//定时1s时间到{8ta20ms=0;hour1--;if(hour1==-1)//1分钟时间到{hour--;hour1=99;if(hour==0){hour=24;hour1=0;k=1;//EA=0;L=1;speaker=~speaker;while(a=2){while(m=225){for(i=0;i=225;i++)a++;m++;}}speaker=1;}}}}/*******************************************************************************************函数名称:Delay*功能描述:延时子程序,延时(1MS*t)S******************************************************************************************/voidDelay(uchart){uchara;while(t--!=0){for(a=0;a125;a++);}}/*******************************************************************************************函数名称:Read_Busy*功能描述:读忙信号判断*******************************************************************************
本文标题:篮球记分器的设计
链接地址:https://www.777doc.com/doc-4276509 .html