基于单片机的简单秒表设计.docx
《基于单片机的简单秒表设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的简单秒表设计.docx(13页珍藏版)》请在冰豆网上搜索。
基于单片机的简单秒表设计
《能力拓展训练》报告
题目:
基于单片机的简单秒表设计
专业班级:
学生姓名:
指导教师:
年月日
《能力拓展训练》任务书
学生姓名:
专业班级:
指导教师:
工作单位:
题目:
基于单片机的简单秒表设计
课程设计目的:
培养学生综合应用所学知识分析问题、解决问题的能力;锻炼学生查询文献资料、灵活运用知识、有效开展科学研究的能力;提高学生的综合素质。
根据本专业需求和特点,需要在通信专业知识、实验技能方面进行综合提高,使学生对常用的数据分析与处理原理与方法有较为全面的了解,能够运用相关软件进行模拟分析。
课程设计内容和要求:
1.试用定时器/计数器或者单片机设计一个简单的秒表,能显示计时状态和结果。
我设计的秒表分辨率为0.01秒,能实现暂停和复位的功能,当秒表记完60秒后又重新开始从零开始计时。
2.画出系统结构框图。
3.画出电路原理图。
4.查阅不少于6篇参考文献。
初始条件:
单片机仿真软件proteus,微机原理
时间安排:
序号
训练内容
所用时间
1
布置任务
0.5天
2
项目设计实践
4天
3
答辩
0.5天
合计
5天
教师签名:
年月日
系主任(或责任教师)签名:
年月日
摘要
随着科技的发展以与对体育事业的重视,机械秒表开始在早期的运动会上大放异彩,充当记录运动员成绩的工具。
当然其仍存在很多不足。
在发展就进入计算机对秒表的控制。
其不仅可实现对时间自动化的精确控制,而且对运动员成绩的查询也更加方便。
本设计的数字电子秒表系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以与外部中断电路来设计计时器。
将软、硬件有机地结合起来,使得系统能够实现五位LED显示,显示时间为0~59.99秒,计时精度为0.01秒,能正确地进行计时,同时能记录一次时间,并在下一次计时后对上一次计时时间进行查询。
其中软件系统采用汇编语言编写程序,包括显示程序,定时中断服务,外部中断服务程序,延时程序等,并在keil中调试运行,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。
随着电力电子技术的发展,单片机得到了快速的发展和广泛的应用,单片机已经广泛应用于冶金、教育、交通、通信、国防、航空航天等领域。
关键词:
数字电路单片机软件硬件
Abstract
WiththedevelopmentofscienceandtechnologyandattentiontothePE,mechanicalstopwatchbeganintheearlydaysofthesportsmeeting,hugerecordofperformanceathletesasatool.Ofcoursetherearestillmanydeficienciesinits.Inthedevelopmentofastopwatchcontrolintothecomputer.Itsnotonlymaketimeforprecisecontroloftheautomation,andperformanceathletestotheinquiresthemoreconvenient.
ThedesignofthedigitalelectronicstopwatchsystemAT89C51microcontrollerasthecenterandusethetimerdevice/countertimingandcounttheory,combinedwithshowcircuit,LEDdigitaltube,andexternalinterruptioncircuittodesigntimer.Thesoftandhardwareorganically,thesystemcanrealizefiveLEDdisplay,showsthetimeis0~59.99seconds,timingprecisionin0.01seconds,cancorrectlytothetime,atthesametimetorecordatime,andinthenexttimetotimeaftertimeinquiresthelasttime.AmongthemsoftwaresystemUSESassemblylanguageprogram,includingshowprogram,timinginterruptservice,externalinterruptserviceroutine,delayprocedure,etc,andintheproductionoperation,keilhardwaresystemsusePROTEUSpowerfulfunctiontorealize,simpleandeasytoobserve,inemulationcanobservetheactualworkingcondition.
Alongwiththedevelopmentofthepowerelectronictechnology,microcontrollerobtainedfastdevelopmentandextensiveapplicationofsinglechiphasbeenwidelyusedinmetallurgy,education,transportation,communication,nationaldefense,aerospaceandotherfields.
Keywords:
digitalcircuitsingle-chipmicrocomputersoftwarehardware
1.设计背景与要求
1.1设计背景
一.嵌入式的定义与特点
1.嵌入式系统的定义
按照历史性、本质性、普遍性要求,嵌入式系统应定义为:
“嵌入到对象体系中的专用计算机系统”。
“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素。
对象系统则是指嵌入式系统所嵌入的宿主系统。
2.嵌入式系统的特点
嵌入式系统的特点与定义不同,它是由定义中的三个基本要素衍生出来的。
不同的嵌入式系统其特点会有所差异。
与“嵌入性”的相关特点:
由于是嵌入到对象系统中,必须满足对象系统的环境要求,如物理环境(小型)、电气/气氛环境(可靠)、成本(价廉)等要求。
与“专用性”的相关特点:
软、硬件的裁剪性;满足对象要求的最小软、硬件配置等。
与“计算机系统”的相关特点:
嵌入式系统必须是能满足对象系统控制要求的计算机系统。
与上两个特点相呼应,这样的计算机必须配置有与对象系统相适应的接口电路。
3.嵌入式系统的种类与发展
按照上述嵌入式系统的定义,只要满足定义中三要素的计算机系统,都可称为嵌入式系统。
嵌入式系统按形态可分为设备级(工控机)、板级(单板、模块)、芯片级(MCU、SoC)。
有些人把嵌入式处理器当作嵌入式系统,但由于嵌入式系统是一个嵌入式计算机系统,因此,只有将嵌入式处理器构成一个计算机系统,并作为嵌入式应用时,这样的计算机系统才可称作嵌入式系统。
嵌入式系统与对象系统密切相关,其主要技术发展方向是满足嵌入式应用要求,不断扩展对象系统要求的外围电路(如ADC、DAC、PWM、日历时钟、电源监测、程序运行监测电路等),形成满足对象系统要求的应用系统。
因此,嵌入式系统作为一个专用计算机系统,要不断向计算机应用系统发展。
因此,可以把定义中的专用计算机系统引伸成,满足对象系统要求的计算机应用系统。
二.嵌入式系统的独立发展道路
嵌入式系统虽然起源于微型计算机时代,然而,微型计算机的体积、价位、可靠性都无法满足广大对象系统的嵌入式应用要求,因此,嵌入式系统必须走独立发展道路。
这条道路就是芯片化道路。
将计算机做在一个芯片上,从而开创了嵌入式系统独立发展的单片机时代。
在探索单片机的发展道路时,有过两种模式,即“∑模式”与“创新模式”。
“∑模式”本质上是通用计算机直接芯片化的模式,它将通用计算机系统中的基本单元进行裁剪后,集成在一个芯片上,构成单片微型计算机;“创新模式”则完全按嵌入式应用要求设计全新的,满足嵌入式应用要求的体系结构、微处理器、指令系统、总线方式、管理模式等。
Intel公司的MCS-48、MCS-51就是按照创新模式发展起来的单片形态的嵌入式系统(单片微型计算机)。
MCS-51是在MCS-48探索基础上,进行全面完善的嵌入式系统。
历史证明,“创新模式”是嵌入式系统独立发展的正确道路,MCS-51的体系结构也因此成为单片嵌入式系统的典型结构体系。
下面我就用51单片机来进行设计,仿真,从而了解嵌入式的基本含义。
1.2设计要求
试用定时器/计数器或者单片机设计一个简单的秒表,能显示计时状态和结果。
我设计的秒表分辨率为0.01秒,能实现暂停和复位的功能,当秒表记完60秒后又重新开始从零开始计时。
1.3设计任务
1)画出系统结构框图。
2)画出电路原理图。
3)写出详细设计说明书,要求字迹工整,原理叙述正确,会计算主要元器件的一些参数,并选择元器件。
4)画图要求:
画图规范化,图形清晰,符号大小统一,线条均匀,最好用PROTEL软件画图。
5)列出元件明细表附在说明书的后面。
6)若选择采用单片机(任选)实现整个系统,则要求编写应用软件,附程序源代码;若选择采用电子电路实现,则软件不作要求。
2.方案论证
秒表的设计可以用数字电路实现,也可以用单片机来实现。
数字电路设计的电路在较早时候就已经有了相当成熟的技术,但是随着科技的发展,单片机的问世使得在单片机控制下的秒表不仅在精度上更优良,而且在计数能力上更加有优越性。
基于单片机的秒表势必要取代数字电路为依托的秒表成为时代的主流。
下面分别对两种方案进行比较论证。
2.1数字电路的设计
秒表数字电路设计由启动、清零复位电路、多谐振荡电路、分频计数电路、译码显示电路等组成,原理框图如图2.1所示:
图2.1数字电路方案原理图
2.2单片机电路的设计
第二种设计是应用了单片机的集成效果。
不需要复杂的数字电路,仅需要简单的接线就可以实现秒表的计时,而且精度更加高。
2.3方案比较
数字电子秒表具有显示直观、读取方便、精度高等优点,在计时中广泛使用。
数字电路虽然不需要进行软件编程,但是使用的硬件非常多,使用的空间很大,电路非常复杂,从经济上讲也不是很划算。
在现有的技术基础上,如果还是选择运用数字电路,不仅成本上不经济,而且效果不佳。
基于单片机的数字秒表,利用了单片机的定时功能,仅需要少量的接线,再加上软件编程控制。
这样不仅节省了花费,而且从技术上讲更加有技术含量,不仅提高了技术的精度,也很大程度上提高了秒表的可靠性以与适应性,使得秒表的计数范围更广,而且更容易修改,因为在修改时仅需要修改部分程序和部分接线就可以实现计数方式以与计数范围的改变。
通过比较发现单片机使用的硬件较少,而且计时的精度也很高,节省了大量的空间。
综上可知单片机设计的秒表性能优越,这次简单秒表的设计应选择使用单片机设计的方案。
3.总体设计思想
3.1硬件框图
本系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合硬件电路如电源电路,晶振电路,复位电路,显示电路,以与一些按键电路等来设计计时器,将软、硬件有机地结合起来。
其中软件系统采用汇编语言编写程序,包括显示程序,中断,延时程序,按键消抖程序等,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。
图3.1硬件结构框图
3.2秒表组成电路设计
3.2.1晶体振荡电路
MCS--51单片机内部的振荡电路是一个高增益反相放大器,引线XTAL1和XTAL2分别为反向振荡放大器的输入与内部时钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡器。
这里,我们选用51单片机12MHZ的内部振荡方式,电路如下:
电容器C1,C2起稳定振荡频率,快速起振的作用,C1和C2可在20-100PF之间取,这里取30P,接线时要使晶体振荡器X1尽可能接近单片机。
图3.2振荡电路
3.2.2按键操作电路
本设计共设计了开始、暂停键,复位键。
这可以提高秒表的工作效率。
在P1口通过接地处理,并在地与P1口之间加上一个点动的按钮,就可以用一个按钮实现两种功能,即既可以当作开始键又可以当作暂停键。
这样一键多用,简化了电路而且不会影响电路的工作效果。
图3.3开始/暂停电路接线图
采用上电+按键复位电路,上电后,由于电容充电,使RST持续一段高电平时间。
当单片机已在运行之中时,按下复位键也能使用使RST持续一段时间的高电平,从而实现上电加开关复位的操作。
这不仅能使单片机复位,而且还能使
单片机的外围芯片也同时复位。
当程序出现错误时,可以随时使电路复位。
图6复位电路接线图
图3.4复位电路接线图
3.2.3显示电路
显示电路既可以选用液晶显示器,也可以选用数码管显示。
我们采用的是数码管显示电路。
用2个共阳极LED显示,LED是七段式显示器,内部有7个条形发光二极管和1个小圆点发光二极管组成,根据各管的亮暗组合成字符。
在用数码管显示时,我们有静态和动态两种选择,静态显示程序简单,显示稳定,但是占用端口比较多;动态显示所使用的端口比较少,可以节省单片机的I/O口。
在设计中,我们采用LED动态显示,用P0口驱动显示。
由于P0口的输出级是开漏电路,用它驱动时需要外接上拉电阻才能输出高电平。
图3.5显示电路接线图
4.软件设计
为了便于程序的阅读和设计以与修改,将软件程序分为几个模块。
在软件设计中,一般也会采用模块化的程序设计方法,它具有明显的优点。
把一个多功能的复杂的程序划分为若干个简单的、功能单一的程序模块,有利于程序的设计和调试,有利于程序的优化和分工,提高了程序的阅读性和可靠性,使程序的结构层次一目了然。
4.1暂停子程序
JILU:
MOVA,20H
MOV@R1,A
INCR1
DJNZ50H,HERE
MOVR1,#71H
MOV50H,#04H
MOV51H,#04H
SJMPSTOP
4.2停止子程序
按键后,使秒表停止,即关闭定时器0,1,程序如下:
STOP:
CLRTR0
CLRTR1;关闭定时器0,1
ACALLDISP;显示
4.3显示子程序
DISP:
MOVR0,#30H
MOVR3,#0FEH
MOVA,R3
PLAY:
MOVP2,A
MOVA,@R0
MOVDPTR,#DSEG1
MOVCA,@A+DPTR
MOVP0,A
LCALLDL1
MOVP2,#0FFH
MOVA,R3
RLA
JNBACC.2,LD1
INCR0
MOVR3,A
LJMPPLAY
LD1:
RET
DL1:
MOVR7,#05H
DL:
MOVR6,#0FFH
DL6:
DJNZR6,$
DJNZR7,DL
RET
4.4延时子程序
DELAY10:
MOVR4,#14H
DL00:
MOVR5,#0FFH
DL11:
DJNZR5,DL11
DJNZR4,DL00
RET
4.5按键消抖程序
L1:
JBP1.1,L2
ACALLDELAY10
JBP1.1,L2
JNBP1.1,$
LJMPKJIAN
5.小结与体会
能力拓展训练使得我们又一次熟悉了已学的数字电路和先学的单片机的应用。
通过这次能力拓展使我们的动手能得到了提升,而且学会了独立完成一项任务。
在做这次设计之前,我以为用自己所学的知识会很容易地完成课程设计,但是当我拿到课设任务书的时候,有一种不知道从何处下手的感觉,在做课设的过程中发现有很多知识点没有掌握,基础知识不可缺少,但是一些核心的高层次的知识点更是不可忽视。
在完成课设的过程中没少向同学请教,由此我意识到,任何时候任何事情,闭门造车是不可取的,要一直坚持向周围的师长,同学求教,以取得新的思考途径。
通过这次强化训练基础课程知识的了解。
这次的能力拓展训练题目涉与到电子电路、模拟电子技术与数字电子技术、单片机原理等方面的知识,充分锻炼了我运用所学知识解决实际问题的能力。
通过查阅资料,温习课本知识和学习笔记,我深刻领悟到各课程之间的联系,并初步掌握了综合运用课本知识分析问题的方法。
本次简单秒表的设计采用单片机与微机原理编程的方法,实现了秒表Proteus原理图的绘制和仿真,达到了预期目的,完成了设计的任务要求。
这次设计充分检验了我自学的能力。
这次的设计任务涉与到了许多软件方面的知识。
通过查阅资料,我不但巩固了所学的课本知识,而且学会了熟练使用许多软件。
通过这次强化训练,我也意识到自己的不足,单片机方面的知识对我们工作和学习都非常重要,而我在这方面还存在很多不足,在今后我会多投入一些时间来学习这方面的知识。
6.参考文献
[1]李华.MCS-51系列单片机实用接口技术.北京:
北京航空航天大学出版社,2008.5
[2]胡振江.MCS-51单片机应用设计.哈尔滨:
哈尔滨工业大学出版社,2004.9
[3]马家辰.MCS-51单片机原理与接口技术.哈尔滨:
哈尔滨工业大学出版社,2007.8
[4]曹巧媛.单片机原理与应用.北京:
电子工业出版社,2006.8
[5]陈景初.单片机应用系统设计与实践.北京:
北京航空航天大学出版社,2005.1
[6]赵秀珍单永磊.单片微型计算机原理与其应用.北京:
中国水利水电出版社,2003.4
本科生能力拓展训练成绩评定表
姓名
性别
男
专业班级
训练设计题目:
基于单片机的简单秒表设计
训练答辩或质疑记录:
1.你是用什么语言进行单片机编译的?
答:
我是用微机原理的汇编语言进行编译的,proteus中有汇编的编译器。
2.电路部分由哪几部分组成?
答:
电路由51单片机,外围电路,显示电路,电源等组成。
3.外围电路怎么实现开关,暂停?
答:
在P1口通过接地处理,在地与P1之间加上一个点动的的按钮,这样既可以当成开始也可以当成暂停按钮,简化了电路,不影响电路实现。
成绩评定依据:
最终评定成绩(以优、良、中、与格、不与格评定)
指导教师签字:
年月日