课程设计 单片机 60秒秒表

课程设计 单片机 60秒秒表

ID:17668503

大小:94.00 KB

页数:9页

时间:2018-09-04

课程设计 单片机  60秒秒表_第1页
课程设计 单片机  60秒秒表_第2页
课程设计 单片机  60秒秒表_第3页
课程设计 单片机  60秒秒表_第4页
课程设计 单片机  60秒秒表_第5页
资源描述:

《课程设计 单片机 60秒秒表》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1任务及要求1.1设计任务学会用已经学过的单片机原理与应用的知识,来设计一个实用性的结构简单化的小型电子产品。编写一个程序,实现秒计时器从00—59计时的基本功能。利用Proteus工具来演示秒计时器的计时。1.2设计要求利用MCS-51系列单片机作为秒表的主控制器芯片,在单片机的P0端口和P2端口分别接两个共阴数码管,P0口驱动显示秒时间的十位,P2口驱动显示秒时间的个位。要求做到性能稳定,结构简单通俗易懂,结构模块化,从而做到节约成本。(1)熟悉电路,了解P0和P1口的作用。(2)熟悉WAVE编译环境。(3)熟练掌握汇编语言,调用延时程序

2、。2设计思想2.1硬件设计将单片机设计成控制器,在AT89C51的P0口和P2口都接7SEG-COM-CATHODE,P0口接上拉电阻,分别显示十位和个位数字。2.2软件设计通过单片机实现控制00-59的计数,根据设计的要求,将0到59的数据除以10,分别取商和余数。并且当一秒钟到来时,计数单元加1,到达60时,则自动返回到0,从新秒计数。同时在计数过程中调用延时程序。93电路原理与电路图3.1电路原理编写程序对80C51芯片进行初始化,在编程过程中主要使用延迟程序来实现秒计时器的计时功能。用Proteus软件来实现秒计时器的仿真,其中将P0

3、口和P1口分别作为高低位输出端口。3.2电路原理图图3.1电路原理图94流程图与算法描述4.1函数流程图4.1.1实验系统流程图开始R0所指地址中内容为0数码管显示00延时一秒@R0=@R0+1@R0=60吗?送入数码管显示YN图4.1.1实验系统流程示意图94.1.2延时程序流程图开始用Lcall指令调用延时程序Delay调用Delay2指令调用Delay1指令R7==0R6==0R5==0跳出延时程序结束执行停止指令NNYYN图4.1.2延时程序流程图4.2算法描述根据设计的要求,利用单片机控制,实现秒计数并显示,具体设计如下:(1)将0

4、到59的数据通过对10整除和对10求余,将数据的个位和十位分开。DIVAB(2)加1计数INC@R0(3)延时程序9DELAY:MOVR5,#100DELAY2:MOVR6,#20DELAY1:MOVR7,#248DJNZR7,$DJNZR6,DELAY1DJNZR5,DELAY25仿真分析程序采用汇编语言编写,并用protues软件编译。用学校的Proteus软件画电路图和进行仿真。编译通过以后,用Proteus软件进行仿真和调试,把编译过后生成的hex文件加载到单片机中运行后就可以看到仿真的结果了。测试数据及结果如下:图5-1运行的结果9

5、6课程设计总结6.1设计体会此次课程设计,我获益良多,在之前了解相关的单片机理论知识的基础上,通过自己的动手实践,理论与实践的结合使得对知识的理解更加深刻,并且慢慢学会培养自己的创新精神,感觉很有成就感,但同时我也认识到自己在单片机方面还有很多不足,尤其是单片机指令系统及AT89C51各引脚的第二功能等等知识不够熟练,因此在设计中遇到了很多不懂的知识,通过自己主动地查资料和请教老师及同学,这些问题也逐步得到解决。设计过程中,刚开始着手设计时,虽然表面看上去很容易,不过实际也不是难题,可我还是没有一点头绪,之后花费了大量的时间和精力,同时得到老

6、师和同学的帮助,才能顺利的完成课程设计,但还是存在一些小问题,需要进一步钻研和解决。设计时,不断调试程序和修改程序,提高了自己对单片机的应用能力,分析问题和解决问题的能力。在实践过程中陈老师和同学给了我很大的帮助和鼓励,借此机会向他们表达我的感激之情。.6.2存在问题与建议通过这次课程设计我深刻的体会到了自己单片机知识的贫乏,编程时总是出现错误,导致我需要不断地翻书查阅资料。在设计时,因能力有限,没有充分利用所学的理论知识,如果适当的对该设计增加功能,并对程序进行改进,就可以既允分利用资源,还可以充分节约资源,更适应市场的需求。9参考文献[1

7、]李泉溪.单片机原理与实例仿真[M].北京:北京航空航天大学出版社,2009[2]江世明.基于Protues的单片机应用技术[M].北京:电子工业出版社,2009[3]沈永林.嵌入式单片机技术[M].北京:清华大学出版社,2007[4]常东超.C程序设计教程[M].北京::清华大学出版社,20099附录(源程序清单)ORG0LJMPSTART;启动指令ORG30H;跳出中断入口START:MOVP0,#0;将p0口清零MOVP2,#0;将p2口清零MOV@R0,#00;将值0赋给R0NEXT:MOVA,@R0;实现P0口从零到5的变化,以及P

8、2口从零到九的变化MOVB,#10DIVABMOVDPTR,#TABLE;建表MOVCA,@A+DPTR;将表的首地址传给累加器AMOVP0,AMOVA,BMOVC

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。