基于单片机的数字电子秒表的设计和实现.docx
- 文档编号:24188973
- 上传时间:2023-05-25
- 格式:DOCX
- 页数:57
- 大小:3.75MB
基于单片机的数字电子秒表的设计和实现.docx
《基于单片机的数字电子秒表的设计和实现.docx》由会员分享,可在线阅读,更多相关《基于单片机的数字电子秒表的设计和实现.docx(57页珍藏版)》请在冰豆网上搜索。
基于单片机的数字电子秒表的设计和实现
沈阳理工大学应用技术学院
毕业设计(论文)
题目:
基于单片机数字电子秒表设计与实现
系别:
信息工程系
专业:
自动化
学生姓名:
胡培
指引教师:
唐朝仁
年月日
摘要
近年来随着科技飞速发展,单片机应用正在不断走向进一步。
本文阐述了基于单片机数字电子秒表设计。
本设计重要特点是计时精度达到0.001s,解决了老式由于计时精度不够导致误差和不公平性,是各种体育竞赛必备设备之一。
此外硬件某些设立了查看按键,可以对秒表上一次计时时间进行保存,供使用者查询。
本设计数字电子秒表系统采用AT89C52单片机为中心器件,运用其定期器/计数器定期和记数原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。
将软、硬件有机地结合起来,使得系统可以实现五位LED显示,显示时间为0~99.999秒,计时精度为0.001秒,能对的地进行计时,同步能记录一次时间,并在下一次计时后对上一次计时时间进行查询。
其中软件系统采用汇编语言编写程序,涉及显示程序,定期中断服务,外部中断服务程序,延时程序等,并在WAVE中调试运营,硬件系统运用PROTEUS强大功能来实现,简朴切易于观测,在仿真中就可以观测到实际工作状态。
核心字:
单片机;数字电子秒表;仿真
Abstract
Withtherapiddevelopmentofscienceandtechnologyinrecentyears,SCMapplicationsareconstant-depthmanner.Inthispaper,basedonsinglechipdesignofdigitalelectronicstopwatch.Themaincharacteristicsofthisdesigntimingaccuracyof0.001s,tosolvethetraditionalresultofalackaccuracyduetotimingerrorsandunfair,andisavarietyofsportscompetitions,oneoftheessentialequipment.InadditionthehardwarepartofthesetViewbuttononthestopwatchcanbethelasttimetosavetimeforuserqueries.
Thedesignofthemulti-functionstopwatchsystemusesSTC89C52microcontrollerasthecentraldevice,anduseitstimer/countertimingandthecountprinciples,combinedwithdisplaycircuit,LEDdigitaltube,aswellastheexternalinterruptcircuittodesignatimer.Thesoftwareandhardwaretogetherorganically,allowingthesystemtoachievetwoLEDdisplayshowsthetimefrom0to99.999seconds,Timingaccuracyof0.001seconds,Beabletocorrectlytimeatthesametimetorecordatime,andthenexttimeafterthelasttimethetimetosearch.automaticallyaddedasecondinwhichsoftwaresystemsusingassemblylanguageprogramming,includingthedisplayprogram,timing,interruptservice,externalinterruptserviceroutine,delayprocedures,keyconsumershakingprocedures,andWAVEinthecommissioning,operation,hardwaresystemusestoachievePROTEUSpowerful,simpleandeasytoobservethecutinthesimulationcanbeobservedontheactualworkingcondition.
Keyword:
LEDdisplay;High-precisionstopwatch;STC89C52
绪论
秒表计时器是电器制造,工业自动化控制、国防、实验室及科研单位抱负计时仪器,它广泛应用于各种继电器、电磁开关,控制器、延时器、定期器等时间测试。
奥运男子百米飞人大战中,牙买加飞人博尔特以9秒69成绩夺得冠军。
而博尔特冲过终点瞬间,荧屏显示其成绩为9秒68。
相差这个0.01秒,系由电子计时系统确认。
奥运会男子100米蝶泳决赛上,美国选手菲尔普斯以50秒58成绩惊险夺冠,距离“八金梦想”仅一步之遥。
塞尔维亚选手查维奇以50.59秒获得银牌,只比菲尔普斯慢0.01秒。
这种细微差距,虽然是现场大屏幕用典型超慢镜头回放,也无法辨别。
8月28日15点15分,中华人民共和国选手孟关良/杨文军在雅典奥运会男子500米划艇决赛中,以1分40秒278成绩获得中华人民共和国在雅典奥运会第28金。
这是中华人民共和国皮划艇项目第一枚奥运金牌,也是中华人民共和国水上项目在历届奥运会上所获得第一枚金牌。
孟关良/杨文军成绩比获得银牌古巴选手只快了0.072秒,以至于两人在夺冠之后还不敢相信。
自首届当代奥运会在希腊雅典举办以来,奥运计时技术始终在不断地向前发展。
一百近年过去了,首届当代奥运会上计时所用跑表如今换成了一系列高科技计时装置,如高速数码摄像机、电子触摸垫、红外光束、无线应答器等等。
鉴于当今计时技术迅速发展,即便千分之一秒(为眨眼40倍)毫微差距,也决定着冠军归属。
在当前体育竞技比赛中,随着运动员水平不断提高,差距也在不断缩小。
有些运动对时间精度规定也越来越高,有时比赛冠亚军之间差距只有几毫秒,因而就需要高精度秒表来记录成绩。
关于计时钟表发展历史,大体可以分为三个演变阶段。
一、从大型钟向小型钟演变。
二、从小型钟向袋表过渡。
三、从袋表向腕表发展。
每一阶段发展都是和当时技术创造分不开。
1088年,当时国内宋朝科学家苏颂和韩工廉等人制造了水运仪象台,它是把浑仪、浑象和机械计时器组合起来装置。
它以水力作为动力来源,具备科学擒纵机构,虽然几十年后毁于战乱,但它在世界钟表史上具备极其重要意义。
1656年,荷兰科学家惠更斯应用伽利略理论设计了钟摆,次年,在她指引下年轻钟匠S.Coster制导致功了第一种摆钟。
1675年,她又用游丝取代了原始钟摆,这样就形成了以发条为动力、以游丝为调速机构小型钟,同步也为制造便于携带袋表提供了条件。
18世纪期间创造了各种各样擒纵机构,为袋表进一步产生与发展奠定了基本。
英国人GeorgeGraham在1726年完善了工字轮擒纵机构,它和之前创造垂直放置机轴擒纵机构不同,因此使得袋表机芯相对变薄。
20世纪初,特别是第一次世界大战爆发,袋表已经不能适应作战军人需要,腕表生产成为大势所趋。
许多新设计和技术也被应用在腕表上,成为真正意义上带在手腕上计时工具。
紧接着二战使腕表生产量大幅度增长,价格也随之下降,使普通大众也可以拥有它。
腕表年代到来了!
1998年:
建立超冷铯原子钟,比微微秒又要精准10万倍。
从国内水运仪像台创造到当前各国都在研制原子钟这几百年钟表演变过程中,咱们可以看到,各个不同步期科学家和钟表工匠用她们聪颖智慧和不断实践融合成了一座时间隧道,同步也为咱们勾勒了一条钟表文化和科技发展轨迹。
本设计运用AT89C52单片机定期器/计数器定期和记数原理,使其能精准计时。
运用中断系统使其能实现开始暂停功能。
P0口输出段码数据,P2.0-P2.4口作列扫描输出,P1.1、P3.2、P3.3、P2.5分别接四个按钮开关,分别实现开始、暂停、清零和查看上次时间功能。
显示电路由五位共阴极数码管构成。
初始状态下计时器显示00.000,当按下开始键时,外部中断INT1向CPU发出中断祈求,CPU转去执行外部中断1服务程序,即启动定期器T0。
计时采用定期器T0中断完毕,定期溢出中断周期为1ms,当一处中断后向CPU发出溢出中断祈求,每发出一次中断祈求就对毫秒计数单元进行加一,达到10次就对十毫秒位进行加一,依次类推,直到99.999秒重新复位。
在计时过程中,只要按下暂停键,外部中断INT0向CPU发出中断祈求,CPU转去执行外部中断0服务程序,即关闭定期器T0,调用显示程序,实现暂停功能,同步将本次计时时间存入寄存区。
然后对P1.1进行扫描。
当P1.1按下时就跳转回主程序。
等待下一次计时开始。
在按下暂停键时,将此时计时时间存入中间缓存区,当再次按下开始键时,则讲中间缓存区数据转入最后缓存区。
秒表停止后对查看键P2.5进行扫描,P2.5按下为低电平时,调用最后缓存区数据进行显示,即显示上一次计时成绩。
当P2.5位高电平时,调用显示缓存区数据进行显示,即显示当此计时成绩。
依照以上设计思路从而实现数字电子秒表计时和查看上一次计时时间功能。
本文重要内容涉及三某些:
第一某些简介硬件某些设计思路及方案;第二某些简介了软件某些设计思路和设计;最后一某些则是整个系统安装与调试过程。
1硬件设计
1.1总体方案设计
数字电子秒表具备显示直观、读取以便、精度高等长处,在计时中广泛使用。
本设计用单片机构成数字电子秒表,力求构造简朴、精度高为目的。
设计中涉及硬件电路设计和系统程序设计。
其硬件电路重要有主控制器,计时与显示电路和回零、启动和停表电路等。
主控制器采用单片机AT89C52,显示电路采用共阴极LED数码管显示计时时间。
本设计运用AT89C52单片机定期器/计数器定期和记数原理,使其能精准计时。
运用中断系统使其能实现开始暂停功能。
P0口输出段码数据,P2.0-P2.4口作列扫描输出,P1.1、P3.2、P3.3、P2.5口接四个按钮开关,分别实现开始、暂停、清零和查看上次计时时间功能。
电路原理图设计最基本规定是对的性,另一方面是布局合理,最后在对的性和布局合理前提下力求美观。
硬件电路图按照图1.1进行设计。
图1.1数字秒表硬件电路基本原理图
依照规定懂得秒表设计重要实现功能是计时和显示。
因而设立了四个按键和五位数码管显示时间,三个按键分别是开始,停止、复位和查看上次计时时间按键。
运用这四个建来实现秒表所有功能,而五位数码管则能显示最多99.999秒计时。
本设计中,数码管显示数据存储在内存单元79H-7DH中。
其中79H存储毫秒位数据,7AH存储十毫秒位数据,7BH存储百毫秒位数据,7CH存储秒位数据,7DH存储十秒位数据,每一地址单元内均为十进制BCD码。
由于采用软件动态扫描实现数据显示功能,显示用十进制BCD码数据相应段码存储在ROM表中。
显示时,先取出79H-7dH某一地址中数据,然后查得相应显示用段码,并从P0口输出,P2口将相应数码管选中供电,就能显示该地址单元数据值。
最后缓存区则设立为59H-5DH,数据存储规则和79H-7DH同样。
分别相应存储毫秒位至十秒位数据。
与79H-7DH存储区不同样是:
59H-5DH存储内容为数字秒表上一次计时显示时间。
而79H-7DH为当前计时时间存储区。
计时采用定期器T0中断完毕,定期溢出中断周期为1ms,当一处中断后向CPU发出溢出中断祈求,每发出一次中断祈求就对毫秒计数单元进行加一,达到10次就对十毫秒位进行加一,依次类推,直到99.999秒重新复位。
再看按键解决。
这四个键可以采用中断办法,也可以采用扫描办法来辨认。
复位键和查看重要功能在于数值复位和查询上次计时时间,对于时间规定不是很严格。
而开始和停止键则是用于对时间锁定,需要比较精确控制。
因而可以对复位和查看按键采用扫描方式。
而对开始和停止键采用外部中断方式。
设计中涉及硬件电路设计和系统程序设计。
其硬件电路重要有主控制器,显示电路和回零、启动、查看、停表电路等。
主控制器采用单片机AT89C52,显示电路采用共阴极LED数码管显示计时时间,四个按键均采用触点式按键。
1.2单片机选取
本课题在选用单片机时,充分借鉴了许多成形产品使用单片机经验,并依照自己实际状况,选取了ATMEL公司AT89S51。
ATMEL公司89系列单片机以其卓越性能、完善兼容性、快捷便利电擦写操作,低便宜格、超强加密功能,完全代替87C51/62和8751/52,低电压、低电源、低功耗,有DIP、PLCC、QFP封装,有民用型、工业级、汽车级、军品级等各种温度级别,是当今世界上性能最佳、价格最低、最受欢迎八位单片机[3]。
AT89C52P为40脚双列直插封装8位通用微解决器,采用工业原则C51内核,在内部功能及管脚排布上与通用8xc52相似,其重要用于会聚调节时功能控制。
功能涉及对会聚主IC内部寄存器、数据RAM及外部接口等功能部件初始化,会聚调节控制,会聚测试图控制,红外遥控信号IR接受解码及与主板CPU通信等。
单片机外部构造
AT89S52单片机采用40引脚双列直插封装方式。
图1.2为引脚排列图,40条引脚阐明如下:
主电源引脚Vss和Vcc
①Vss接地
②Vcc正常操作时为+5伏电源
外接晶振引脚XTAL1和XTAL2
①XTAL1内部振荡电路反相放大器输入端,是外接晶体一种引脚。
当采用外部振荡器时,此引脚接地。
②XTAL2内部振荡电路反相放大器输出端。
是外接晶体另一端。
当采用外部振荡器时,此引脚接外部振荡源。
图1.2单片机引脚图
控制或与其他电源复用引脚RST/VPD,ALE/
,
和
/Vpp
①RST/VPD当振荡器运营时,在此引脚上浮现两个机器周期高电平(由低到高跳变),将使单片机复位在Vcc掉电期间,此引脚可接上备用电源,由VPD向内部提供备用电源,以保持内部RAM中数据。
②ALE/
正常操作时为ALE功能(容许地址锁存)提供把地址低字节锁存到外部锁存器,ALE引脚以不变频率(振荡器频率1/6)周期性地发出正脉冲信号。
因而,它可用作对外输出时钟,或用于定期目。
但要注意,每当访问外部数据存储器时,将跳过一种ALE脉冲,ALE端可以驱动(吸取或输出电流)八个LSTTL电路。
对于EPROM型单片机,在EPROM编程期间,此引脚接受编程脉冲(
功能)
③
外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,
在每个机器周期内两次有效。
同样可以驱动八LSTTL输入。
④
/Vpp、
/Vpp为内部程序存储器和外部程序存储器选取端。
当
/Vpp为高电平时,访问内部程序存储器,当
/Vpp为低电平时,则访问外部程序存储器。
对于EPROM型单片机,在EPROM编程期间,此引脚上加21伏EPROM编程电源(Vpp)。
输入/输出引脚P0.0-P0.7,P1.0-P1.7,P2.0-P2.7,P3.0-P3.7。
①P0口(P0.0-P0.7)是一种8位漏极开路型双向I/O口,在访问外部存储器时,它是分时传送低字节地址和数据总线,P0口能以吸取电流方式驱动八个LSTTL负载。
②P1口(P1.0-P1.7)是一种带有内部提高电阻8位准双向I/O口。
能驱动(吸取或输出电流)四个LSTTL负载。
③P2口(P2.0-P2.7)是一种带有内部提高电阻8位准双向I/O口,在访问外部存储器时,它输出高8位地址。
P2口可以驱动(吸取或输出电流)四个LSTTL负载。
④P3口(P3.0-P3.7)是一种带有内部提高电阻8位准双向I/O口。
能驱动(吸取或输出电流)四个LSTTL负载[6]。
AT89C52具备如下原则功能:
8k字节Flash,256字节RAM,32位I/O口线,看门狗定期器,2个数据指针,三个16位定期器/计数器,一种6向量2级中断构造,全双工串行口,片内晶振及时钟电路。
此外,AT89C52可降至0Hz静态逻辑操作,支持2种软件可选取节电模式。
空闲模式下,CPU停止工作,容许RAM、定期器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一种中断或硬件复位为止。
CPU是单片机核心部件。
它由运算器和控制器等部件构成[2]。
(1)运算器
运算器功能是进行算术运算和逻辑运算。
可以对半字节(4位)、单字节等数据进行操作。
例如能完毕加、减、乘、除、加1、减1、BCD码十进制调节、比较等算术运算和与、或、异或、求补、循环等逻辑操作,操作成果状态信息送至状态寄存器。
89C52运算器还包具有一种布尔解决器,用来解决位操作。
它是以进位标志位C为累加器,可执行置位、复位、取反、等于1转移、等于0转移、等于1转移且清0以及进位标志位与其她可寻址位之间进行数据传送等位操作,也能使进位标志位与其她可移位寻址位之间进行逻辑与、或操作[5]。
(2)程序计数器PC
程序计数器PC用来存储即将要执行指令地址,共16位,可对64K程序存储器直接寻址。
执行指令时,PC内容低8位经P0口输出,高8位经P2口输出。
(3)令寄存器
指令寄存器中存储指令代码。
CPU执行指令时,由程序存储器中读取指令代码送入指令寄存器,经译码后由定期与控制电路发出相应控制信号,完毕指令功能。
本设计采用ATMELAT89C52微解决器,重要基于如下几种因素:
①AT89C52为51内核,仿真调试软硬件资源丰富。
②性价比高,货源充分。
③功耗低,功能强,灵活性高。
④DIP40封装,体积小,便于产品小型化。
⑤为EEPROM程序存储介质,1000次以上擦写周期,便于编程调试。
⑥工作电压范畴宽:
2.7V-6V,便于交直流供电。
1.3显示电路选取与设计
对于数字显示电路,普通采用液晶显示或数码管显示。
对于普通段式液晶屏,需要专门驱动电路,并且液晶显示作为一种被动显示,可视性差,不适合远距离观看;对于具备驱动电路和单片机接口液晶显示模块(字符或点阵),普通多采用并行接口,对单片机接口规定较高,占用资源多;此外,AT89S52单片机自身无专门液晶驱动接口。
而数码管作为一种积极显示屏件,具备亮度高、响应速度快、防潮防湿性能好、温度特性极性、价格便宜、易于购买等长处,并且有远距离视觉效果,很适合夜间或是远距离操作。
因而,本设计显示电路采用7段数码管作为显示介质。
数码管显示可以分为静态显示和动态显示两种。
由于本设计需要采用五位数码管显示时间,如果静态显示则占用口线多,硬件电路复杂。
因此采用动态显示。
图1.3显示电路基本原理图
动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示屏方式称为位扫描。
普通各位数码管段选线相应并联在一起,由一种8位I/O口控制;各位公共阴极位选线由此外I/O口线控制。
动态方式显示时,各数码管分时轮流选通,要使其稳定显示必要采用扫描方式,即在某一时刻只选通一位数码管,并送出相应段码,在另一时刻选通另一位数码管,并送出相应段码,依此规律循环,即可使各位数码管显示将要显示字符,虽然这些字符是在不同步刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够短就可以给人同步显示感觉。
数码显示管分为共阳数码管和共阴数码管两种
共阳极数码管8个发光二极管阳极(二极管正端)连接在一起,如图1.4(b),普通,公共阳极接高电平(普通接电源),其他管脚接段驱动电路输出端。
当某段驱动电路输出端为低电平时,则该端所连接字段导通并点亮,依照发光字段不同组合可显示出各种数字或字符。
此时,规定段驱动电路能吸取额定段导通电流,还需依照外接电源及额定段导通电流来拟定相应限流电阻。
共阴极数码管8个发光二极管阴极(二极管负端)连接在一起,如图(c),普通,公共阴极接低电平(普通接地),其他管脚接段驱动电路输出端,当某段驱动电路输出端为高电平时,则该端所连接字段导通并点亮,依照发光字段不同组合可显示出各种数字或字符。
此时,规定段驱动电路能提供额定段导通电流,还需依照外接电源及额定段导通电流来拟定相应限流电阻。
图1.4(a)数码管引脚图(b)共阳极内部构造图(c)共阴极内部构造图
本设计采用共阴极数码显示管做显示电路,由于采用是共阴数码显示管,因此只要数码管a、b、c、d、e、f、g、h引脚为高电平,那么其相应二极管就会发光,使数码显示管显示0~9编码见表1.1。
表1.1共阴极数码显示管字型代码
字型
共阴极代码
字型
共阴极代码
0
3FH
5
6DH
1
06H
6
7DH
2
5BH
7
07H
3
4FH
8
7FH
4
66H
9
6FH
动态显示电路由显示块、字形码驱动模块、字位驱动模块三某些构成。
如图1.3所示为本系统5位LED动态显示屏接口电路。
图中,5个数码管8段段选线分别与外接上拉电阻单片机P0口相应相连,而5个数码管位控制端则和NPN型三极管集电极相连接。
单片机P2.0~P2.4口则分别相应数码显示管最低位到最高位,P2.0~P2.4口分别和五个NPN型三极管基极相连,做三极管导通控制端,而NPN型三极管选用9013型三极管。
依照9013资料显示:
其耐压值为40V,最大功率为0.65W,最大电流为0.5A,电气性能完全满足本设计规定。
此外数码管显示是采用动态显示,因此对三极管开关频率有一定规定。
依照电子秒表设计计算可知动态显示频率最高为3KHz,而9013导通频率为150MHz,完全能满足本设计规定,因此最后选用9013三极管最为位控制开关。
由于数码管是有P0口来驱动,它内部没有上拉电阻,作为输出口时驱动能力比较弱,不能点亮数码显示管,因而P0口必要接上拉电阻来提高驱动能力。
此外一位共阴数码管驱动电流普通为20mA左右,如果电流太大容易导致数码管损坏,因此也需要依照电源电压值来拟定上拉电阻大小。
如果电阻过小,势必会形成灌电流过大,导致单片机IO损坏,如果电阻过大,那么对拉电流没有太大影响。
电源供电电压为5V,当上拉电阻选用220Ω电阻时灌电流为22mA。
不会损坏单片机I/O口,同步也可觉得数码显示管起到限制电流保护作用。
1.4按键电路选取与设计
本设计中有四个按键,分别实现开始、暂停、复位和查看功能。
这三个键可以采用中断办法,也可以采用查询办法来辨认。
对于复位键和查看键,重要功能在于数值复位和对上次计时时间查看,对于时间规定不是很严格,而开始和暂停键重要用于时间锁定,需要比较精确控制。
因而可以考虑,对复位键和查看键采用查询方式,而对于开始和暂停键采用外部中断。
四个按键均采用低电平有效,详细电路连接图如图1.5所示。
当按键没有按下时,单片机I/O口直接连接电源,因而需要接上拉电阻来进行限流,本设计中选用阻值为2kΩ电阻作为上拉电阻,依照计算可知此时灌电流为2.5mA,查看AT89C52资料得知次电流在安全范畴内,符合安全设计规定。
图1.5按键电路
按键电路中由于采用了外部中断,因此需要用到P3口第二功能。
P3口引
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 数字 电子 秒表 设计 实现