基于单片机的秒表系统设计_第1页
基于单片机的秒表系统设计_第2页
基于单片机的秒表系统设计_第3页
基于单片机的秒表系统设计_第4页
基于单片机的秒表系统设计_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、基于单片机的秒表系统设计组员:一.设计内容:1 .设计精度为0.1s的秒表系统2 .设置启动、暂停、清零按钮3 .秒表的最长计时长度为9:59:9,超过此长度,则报警二.方案设计1 .总体方案本设计是基于AT89C51单片机设计的,我们是分为几个模块来设计的。首先对秒表的硬件进行了设计,它包括时钟电路设计、控制电路设计以及外部显示电路。利用89C51单片机的定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。计时精度为0.1s。其次是软件进行了设计,软件系统采用汇编语言编写程序,包括显示程序,定时中断服务,外部中断服务程序,延时程序等。这次的试验要求进行计时

2、并且在数码管上显示时间,先要基本了解硬件内在结构,确定用p2并行端口进行数码管控制输入,使用P1.6,P1.5,P1.4,P1.3进行选择0.1秒位,秒位,十位秒位,分钟位,以P3.0为开始控制,P3.1为停止控制,以P3.2为清零控制。本次实验设计的基本思路是要求借助AT89C51单片机做出一个0-9.59.9s的秒表从十位秒到0.1位秒数这些计时的位数是存在一个内嵌的结构,就是0.1秒位满足条件然后进行跳位使秒位加一的过程,当0.1s到0.9s时该位自动清零并且秒位加一,秒位达到9时也自动清零并向十秒位加一。当计数超过范围是所有数码管全部清零重新计数。其次开始控制,停止控制,清零控制等功能

3、,我们采用蜂鸣器进行提示,该信号由P1.0输出由7406非门与外加电源驱动,通过一个延时子程序加以控制。最后就是根据硬件的条件进行编程,要求软硬件相互兼容。2 .硬件设计本系统中,硬件电路主要有晶振电路,复位电路,显示电路以及一些按键控制电路。(1)晶体振荡电路利用12分频的晶振的一个机器周期为一微妙,通过循环延时产生0.1秒的延时,通过XTAL1和XTAL2外接晶体振荡器构成内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。MCS-51单片机内部的振荡电路是一个高增益反相放大器,引线XTAL1和XTAL2分别为反向振荡放大器的输入及内部时

4、钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡振荡电路(2)复位电路采用上电加按键复位电路,也就是手动复位,上电后,由于电容充电,使RET持续一段高电平时间,当单片机运行时,按下复位键也能使RET持续一段时间的高电平,从而实现上电加开关复位的操作。上电加复位电路(3)按键控制电路我们只需要实现秒表的启动、暂停、清零、复位功能。用四个按键可以实现,因此采用按键电路。利用部分P3口进行控制,用P3.0、P3.1、P3.2分别作为S1、S2、S3的电路接口。按下S1时启动,按下S2时暂停,按下S3清零.(4)LED显示电路我们用LE躁码管显示结果,用4个共阳极LED显示,用P

5、2并行端口进行数码管的控制输入,使用P1.6、P1.5、P1.4、P1.3进行选择0.1秒位、秒位、十秒位、分钟位。电路原理图(网上参考图)3.软件设计主程序流程图三.计划书第一周(9月10日-16日):选好课题,熟悉任务要求。第二周(9月17日-23日):总体方案设计第三周(9月24日-30日):硬件设计,即画出电路原理图,软件设计,做好流程图就可以,列出实验所需清单。第四周(10月1日-7日):国庆放假第五周(10月8日-14日):完成软件编程,用C语言或汇编都可以第六周(10月15日-21日):完成系统的硬件组装,焊接实体电路第七周(10月22日-28日):系统调试,改进、完善电路,整理

6、实验设计报第八周(10月29日一一):课堂考核四.器材清单AT89C51片机(双列直插)X174LS244芯片(双列直插)X17406芯片(双列直插)X5晶振12MHzX1电容(30pF)X2,22pFX1电阻470QX18.2kQX110kQX5按键开关X5LE国码管X5蜂鸣器X1导线若干五.源程序HAOMIAOEQU34HMIAOEQU35HSHIMIAOEQU36HORG0000HAJMPSTARTORG0030HSTART:CLRCSETBP1.6SETBP1.5SETBP1.4MOVHAOMIAO,#0MOVMIAO,#0MOVSHIMIAO,#0MOVDPTR,#TABLEMOVA

7、,#00HMOVCA,A+DPTRCLRP1.6MOVP2,AMOVA,#00HMOVCA,A+DPTRCLRP1.4MOVP2,AMOVDPTR,#TABLE1MOVA,#00HMOVCA,A+DPTRCLRP1.5MOVP2,ALCALLKAISHILCALLMAINSHIWEI:SETBP1.5MOVDPTR,#TABLE;MOVMIAO,#0;INCSHIMIAOMOVA,SHIMIAOCLRCSUBBA,#6JZSTARTAJMPMAINRETTINGZHI:MOVA,#00HMOVA,P3ANLA,#04HJZSTARTMOVA,#00H;MOVA,P3CLRCANLA,#02HL

8、CALLYANSHIJZMAINLJMPTINGZHISTART1:LJMPSTARTSHIWEI1:LJMPSHIWEIMAIN:SETBP1.5SETBP1.4SETBP1.6十秒位显示使秒位从零位重新循环判断是否有清零指判断是否有停止指令MOVA,#00H;判断是否有清零指令MOVA,P3ANLA,#04HJZSTART1MOVA,#00H判断是否有停止指令MOVA,P3CLRCANLA,#02HJZTINGZHIMOVDPTR,#TABLEINCHAOMIAOMOVA,HAOMIAOCLRCSUBBA,#10JZMIAOZHENLCALLYANSHIAJMPMAINRET;MIAOZH

9、EN:SETBP1.4MOVDPTR,#TABLE1MOVHAOMIAO,#0INCMIAO;MOVA,MIAOCLRCSUBBA,#10JZSHIWEI1LCALLSNDAJMPMAINYANSHI:MOVR6,#30DL2:MOVA,#00HMOVA,P3ANLA,#04HJZSTART1MOVDPTR,#TABLEMOVA,SHIMIAOMOVCA,A+DPTRCLRP1.6MOVP2,AACALLYIHAOMIAOSETBP1.6MOVA,HAOMIAO;0.1位秒显示加一,可查下一位数据判断是否进位延时0.1秒继续计时秒位显示使0.1秒从零重新循环加一,可查下一位数据判断是否进位返回0.1秒计判断是否有清零指令MOVCA,A+DPTRCLRP1.4MOVP2,AACALLYIHAOMIAOSETBP1.4MOVDPTR,#TABLE1MOVA,MIAOMOVCA,A+DPTRCLRP1.5MOVP2,AACALLYIHAOMIAOSETBP1.5DJNZR6,DL2RETYIHAOMIAO:MOVR7,#250CV:NOPNOPDJNZR7,CVRETKAISHI:MOVA,#0MOVA,P3ANLA,#01HJNZKAISHIRETSND:SETBP1.0MOVR1,#1EHDL:MOVR0,#0F9HDL1:D

温馨提示

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

评论

0/150

提交评论