您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于51单片机的秒表设计报告
1课程名称:微机原理课程设计题目:基于51单片机的秒表设计16摘要随着社会的发展,单片机已经渗透到我们生活中的各个领域,广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等。本设计就是由单片机STC89C52RC芯片和四位一体LED数码管为核心,辅以必要的电路,构成了一个单片机电子秒表。秒表是一种常用的测试仪器,它可以用在百米赛跑等需要精确计时的地方,为人们的生活提供了很大的方便。该单片机电子秒表布置合理,全部器件分布在7*9cm洞洞板上,看起来小巧精简。采用的是单片机内部定时/计数器计时,走时非常精确而且不易出错。0.56英寸的四位数码管发出红光,可以直观地显示时间。一个控制按键就可以控制秒表的计数与停止,按一下控制键,秒表工作状态就由计时变为计时变为停止或停止变为计时,按一下清零键就可以清零,操作非常简单。由于是四位数码管,它的计时周期为100秒,显示满刻度为99:99秒,从左往右数共四位,前两位显示整数部分,后两位显示小数部分,中间两个个秒闪灯(秒闪灯一直亮)。关键词:秒表,51单片机,C语言17目录一、设计任务与要求.................................................................................................181.1设计任务..........................................................................................................................181.2设计要求..........................................................................................................................18二、方案总体设计.....................................................................................................192.1方案一..............................................................................................................................192.2方案二..............................................................................................................................192.3系统采用方案..................................................................................................................19三、硬件设计.............................................................................................................213.1单片机最小系统..............................................................................................................213.2数码管显示模块..............................................................................................................213.3系统电源..........................................................................................................................223.4整体电路..........................................................................................................................22四、软件设计.............................................................................................................244.1keil软件介绍....................................................................................................................244.2系统程序流程..................................................................................................................24五、仿真与实现.........................................................................................................275.1proteus软件介绍..............................................................................................................275.2仿真过程..........................................................................................................................275.3实物制作与调试..............................................................................................................295.4使用说明..........................................................................................................................30六、总结.....................................................................................................................326.1设计总结...........................................................................................................................326.2经验总结...........................................................................................................................20七、参考文献.............................................................................................................2118一、设计任务与要求1.1设计任务1).对更多小器件的了解2).巩固51单片机和C语言的知识,熟悉单片机和C语言的实际操作运用3).掌握仿真软件的运用和原理图的绘制4).加深焊接的技巧,提高焊接的能力5).熟悉调试方法和技巧,提高解决实际问题的能力6).熟悉设计报告的编写过程1.2设计要求1).清零键进行清零2).一个独立按键进行停止与运行的操作3).秒闪灯一直亮19二、方案总体设计设计一个基于51单片机的秒表。利用单片机内部精确到微妙的定时计数器来实现计时功能;秒闪灯一直亮;利用引脚的电平变换来实现一个独立按键按控制秒表的运行与停止;利用清零按键功能来实现清零操作。2.1方案一51单片机的定时/计数器工作在模式2时是一个可以自动重装载的8位定时/计数器。工作时高八位和低八位装入相同的初值,当低八位装满时,高八位的值自动装入到第八位中,从而可以省去用户软件中重装初值常数的语句,可产生相当精确的定时时间。由于只有八位参与计数,所以其计数周期最大为256微妙。秒表精确到0.01秒,所以采用初值装入0x38,计数50次秒表最低位加1。低位的累加进而向高位的进位,从而实现四位数码管的秒表显示。设置让秒闪灯一直亮。同样检测TR0的值,如果TR0为0,则说明暂停。外部中断具有实时处理的功能,所以可以利用外部中断来进行控制运行与停止的操作。外部中断有两种触发中断的方式:定电平触发,跳变沿触发。如果用低电平触发的话,由于按键每按一次,导通的时间大约为20毫秒,在这个时间段足够触发好多次中断,所以不用低电平触发,采用跳变沿触发中断。每按一次按键触发一次中断,在中断程序中对TR0进行设置,从而实现控制运行与停止。清零键每按一次就清零一次,数码管也就显示初始的00:00状态,就可以重新计时。2.2方案二51单片机的定时/计数器工作在模式0时是一个16位位定时/计数器。工作时高八位和低八位各装入初值,当低八位装满时,高八位加1。由于是16位参与计数,所以其计数周期最大为65536微妙。秒表精确到0.01秒,所以采用高八位初值装入(65536-10000)/256,低八位装入(65536-10000)%256,计数1次秒表最低位加1。低位的累加进而向高位的进位,从而实现四位数码管的秒表显示。设置让秒闪灯一直亮。同样检测TR0的值,如果TR0为0,则说明暂停。按键可以改变引脚的电平,所以可以检测P口的变化,根据P口的电平情况来在程序中对TR0进行设置,从而实现控制运行与停止。清零键每按一次就清零一次,数码管也就显示初始的00:00状态。2.3系统采用方案1)总体设计:设计总体框架图如图所示20图1系统总体框架2)总体工作原理由于定时器工作模式2是八位,可装入的值太小,秒表最低位每加一次需要进入50次定时器中断,由于进入中断的次数太多,所以很容易出现在低八位装满本应触发而程序还在中断子程序中运行,而无法触发中断的情况,所以不采用工作模式2。工作模式0只需要进入定时中断一次就可以让秒表最低位加1次,所以选择功能模式0。由于外部中断跳变沿方式每一次下降沿都会触发中断,而按键按下的时候,会出现抖动的情况,并且采用外部中断不易进行消抖,很不稳定,很可能按一次出现几次中断,所以不采用外部中断方式。用P口检测的话,比较容易消抖,并且也可以实时监测,所以用P口检测的方法。综上选择方案二。21三、硬件设计3.1单片机最小系统单片机要正常工作,首先要产生片内时钟信号。在单片机内部的振荡器的输入端XTAL1和输出端XTAL2之间接一个石英晶振就可以够成一个自激振荡器。再在两端之间串联接个电容并且在两个电容之间接地以便于稳定频率还对振荡频率有微调作用。
本文标题:基于51单片机的秒表设计报告
链接地址:https://www.777doc.com/doc-6182194 .html