基于单片机实现的简易秒表毕业论文.docx
《基于单片机实现的简易秒表毕业论文.docx》由会员分享,可在线阅读,更多相关《基于单片机实现的简易秒表毕业论文.docx(12页珍藏版)》请在冰豆网上搜索。
基于单片机实现的简易秒表毕业论文
目录
摘要………………………………………………………………………
Abstract……………………………………………………………………...
1绪论…….……………………………………........................
1.1设计任务及指标…………………………………………………...
1.2系统设计方案论证…………………………..……………………………
1.3设计任务...........................................................................................................
2设计方案简述…………………………..…………………...............
2.1中央处理单元………………………………..………………………….…
2.2电源电路部分……………………………..………………………….…
2.3显示部分…………………………………..………………………….…
3详细设计……………………………………………..………………......
3.1器件及原理…………………………..………………………….…............
3.1.1STC89C52简介.............................................
3.1.274LS138简介..............................................
3.2电路制作…………………………………………………………………
4总结...………………………………..………………………….…........................
参考文献.....................................................................................................................
附录主要程序代码………...………………………..………………………….…
摘要
在现实生活中,秒表的用途很广泛。
比如,测速、辩论会的限时答辩、运动会等各项赛事。
计时秒表除上述功能外,历史上还曾用作航空测量。
通过与简单天文仪器的结合,可以方便地测出飞机的位置。
此时的计时秒表用作标准时间的守时器,而天文仪器则可以测出飞机所处位置的实际太阳时。
通过换算(转动特殊的刻度盘,就像拉动计算尺一样),可快速得出所在地的位置。
这一功能当然也可以用常规计时钟表来完成,如航海时常用“航海钟”守时,它无需秒表功能,但结果须经过换算,不适合高速的航空测量。
随着科学技术的高速发展,秒表的功能不再是单一的简单计时功能。
秒表的多样化大大的方便了人们各方各面的需求。
该设计的简易秒表是一个将“秒”显示给我们的视觉器官的装置。
它能实现无限时计时,间隔1秒。
该简易秒表由开关、单片机及显示器组成。
实现简单的计时功能。
关键词:
单片机;计时
Abstract
Withtherapidchangesintechnologyinmodernlife,timeislife,thatisefficient.Peoplemoreandmoretimeonvalue,moreandrequireprecisetime,thestopwatchisthemostcommontimetoprecisioninstruments.Stopwatchfortheregularmovement(basketball,football,etc.)whenthetestitems;stopwatchisalsousedinavarietyofareas(agriculture,scientificresearchinareassuchas)theprecisetimemeasurement.Stopwatchisatypicaldigitalcircuit.
Thedesignofthedigitalstopwatchcountbythemodule,decodingmodule,datacontrolmoduleandClear/suspendedcircuit.Therealizationofthestopwatchcountingmoduleclockcount;decodingthedatadisplaymoduleinthecontrolmodulewillbeunderthecontrolofthetransmissionoftheclockcountingmoduleofdollarsindigitaldecoderontheoutput;throughtheclockandsuspendedtherealizationofClearreset/pausefunction.Thenconnectthemoduletocarryoutsimulation,debuggingdownloadtocompletethedesign.
WiththerapiddevelopmentofEDAtechnologies,EDAworksinthefieldofelectronicsandintegratedcircuitdesignanincreasinglyimportantroleinthisdesignistheuseofhardwaredescriptionlanguageintheVerilogHDLlanguage,theuseofQuartusIIsoftwarestopwatchoneachmodulecodeThepreparation,simulation,anddownloadvalidation.
Keyword:
counter;stopwatch
1.绪论
1.1设计任务及指标
(1)通过本课程的选题、方案论证、设计计算、安装调试、资料整理、撰写实验报告等环节,初步掌握秒表的设计方法及其基本技能,深化、扩展并综合运用课堂所学的分析设计方法及电路知识完成小系统的电路设计;
(2)利用89C52单片机、74LS138、显示管等设计一个简易秒表,实现简单的计时功能;
(3)在实验装置上或者利用仿真软件完成简易秒表的线路连接和调试。
功能要求:
最终实现秒表的无限计时功能
1.2系统设计方案论证
作为简易秒表,所以必须有一个显示管。
按设计要求,需用数码管来做显示。
题目要求为无限时计时,那则需要多个数码显示管。
要求计分频率为0.1秒,那么我们需要相应频率的晶振。
在选择译码器的时候,有多种选择,我们使用74LS138型号的译码器。
当然,因为设计相对比较简单,存在很大的设计误差,有待去改进。
1.3设计任务
本课程设计的任务就是设计一个简易计时秒表。
具体设计任务如下:
1.熟悉秒表的工作原理;
2.写出设计秒表的设计方案;
3.用硬件加以实现;
4.写课程设计报告。
设计要求:
设计一个简易计时秒表。
要求:
1.按下按钮,计时开始;
2.再次按下按钮,则重新开始计时;
3.所设计的秒表的计时范围是无限时,精确到0.1s;
4.所设计的秒表有多次计时功能。
2.设计方案简述
整个秒表系统电路可分为三大部分:
中央处理单元(CPU)、电源电路部分、显示部分。
2.1中央处理单元
CPU选用AT89C51对整个系统进行控制:
1)它将定时数据输出到LED,实现时间的显示;
2)按下按钮,计时开始。
2.2电源电路部分
在各种电子设备中,直流稳压电源是必不可少的组成部分,它是电子设备唯一能量来源,该设计需5V电压。
2.3显示部分
显示部分是整个电子时钟最为重要的部分,它只要时间显示的部分,无限时计时,共需要8位LED显示器。
采用动态显示方式,所谓动态显示方式是时间数字在LED上一个一个逐个显示,它是通过位选端控制在哪个LED上显示数字,由于这些LED数字显示之间的时间非常的短,使的人眼看来它们是一起显示时间数字的,并且动态显示方式所用的接口少,节省了CPU的管脚。
由于端口的问题以及动态显示方式的优越性,在此设计的连接方式上采用共阴级接法。
显示器LED有段选和位选两个端口,首先说段选端,它由LED八个端口构成,通过对这八个端口输入的不同的二进制数据使得它的时间显示也不同,从而可以得到我们所要的时间显示。
3详细设计
3.1器件及原理
3.1.1AT89C52简介
功能特性描述:
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有
8K在系统可编程Flash存储器。
使用Atmel公司高密度非
易失性存储器技术制造,与工业80C51产品指令和引脚完
全兼容。
片上Flash允许程序存储器在系统可编程,亦适于
常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统
可编程Flash,使得AT89S52为众多嵌入式控制应用系统提
供高灵活、超有效的解决方案。
AT89S52具有以下标准功能:
8k字节Flash,256字节RAM,
32位I/O口线,看门狗定时器,2个数据指针,三个16位
定时器/计数器,一个6向量2级中断结构,全双工串行口,
片内晶振及时钟电路。
另外,AT89S52可降至0Hz静态逻
辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU
停止工作,允许RAM、定时器/计数器、串口、中断继续工
作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,
单片机一切工作停止,直到下一个中断或硬件复位为止。
图
(1)引脚结构
3.1.274LS138简介
74LS138为3线-8线译码器,共有54/74S138和54/74LS138两种线路结构型式,其工作原理如下:
当一个选通端(G1)为高电平,另两个选通端(/(G2A)和/(G2B))为
低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端以低
电平译出。
利用G1、/(G2A)和/(G2B)可级联扩展成24线译码器;若外接一个反
相器还可级联扩展成32线译码器。
若将选通端中的一个作为数据输入端时,74LS138还可作数据分配器。
71LS138有三个附加的控制端、和。
当、时,输出为高电平(S=1),译码器处于工作状态。
否则,译码器被禁止,所有的输出端被封锁在高电平,如表3.3.5所示。
这三个控制端也叫做“片选”输入端,利用片选的作用可以将多篇连接起来以扩展译码器的功能。
带控制输入端的译码器又是一个完整的数据分配器。
在图3.3.8电路中如果把作为“数据”输入端(在同一个时间),而将作为“地址”输入端,那么从送来的数据只能通过所指定的一根输出线送出去。
这就不难理解为什么把叫做地址输入了。
例如当=101时,门的输入端除了接至输出端的一个以外全是高电平,因此的数据以反码的形式从输出,而不会被送到其他任何一个输出端上。
3.2电路制作
根据电路图(如图示1)将元器件布置在电路板上:
图
(1)
根据元器件种类和体积以及技术要求将其布局在电路板上的适当位置。
可以先从体积较大的器件开始,如单片机底座、显示管等器件。
待体积较大的元器件布局好之后,小型的电子元器件就可以根据间隙面积灵活布置。
二极管、电感器、阻容元件的装配方式一般有直立式、俯卧式和混合式三种。
①直立式。
电阻、电容、二极管等都是竖直安装在印刷板上的。
这种方式的特点是:
在一定的单位面积内可以容纳较多的电子元件,同时元件的排列也比较紧凑。
缺点是:
元件的引线过长,在一个平面上,欠美观,元器件引脚弯曲,且密度较大,元器件之间容易引脚碰触,可靠性欠佳,且不太适合频率较高的电路采用。
②俯卧式。
电阻、电容、二极管等都是俯卧式安装在印刷板上的。
这样可以明显地降低元件的排列高度,可实现薄形化,同时元器件的引脚也最短,适合于较高工作频率的电路采用,也是目前采用最广泛的一种安装方式。
③混合式。
为了适应各种不同条件的要求或某些位置受面积所限,在一块印刷电路板上,有的元器件则采用俯卧式。
这受到电路结构各式以及机壳内尺寸的限制,同时灵活处理。
元器件配置布局应考虑的因素:
①电路板是矩形,元件排列的长度方向一般应与电路板的长边平行,这样不但可以提高元件的装配好的印刷电路板更美观。
②应尽可能地缩短元件及元件之间的引线。
尽量避免电路板上的导线的交叉,设法减小它们的分布电容和互相之间的电磁干扰,以提高系统工作的可靠性。
③应以功能电路的核心器件为中心,外围元件围绕它进行布局。
④要注意各种门电路多余的处理,或接电源端或接地端,并按照正确的方法实现不同逻辑门的组合转换。
⑤元器件的配置和布局应有利于设备的装配、检查、高度和维修。
元器件焊接注意事项:
焊接前务必认准元件数值,会认元件上的标识和会用数字多用表测试。
焊接时速度要快,电烙铁不可长时间停留在电路板和元件的焊脚上,时间过长容易导致元器件损坏。
4.总结
通过这次的设计使我认识到我对单片机方面的知识知道的太少了,对于书本上的很多知识还不能灵活运用,有很多我们需要掌握的知识在等着我去学习,我会在以后的学习生活中弥补我所缺少的知识。
本次的设计使我从中学到了一些很重要的东西,那就是如何从理论到实践的转化,怎样将我所学到的知识运用到我以后的工作中去。
在大学的课堂的学习只是在给我们灌输专业知识,而我们应把所学的用到我们现实的生活中去,此次的秒表设计给我奠定了一个实践基础,我会在以后的学习、生活中磨练自己,使自己适应于以后的竞争。
参考文献
[1]李建编,单片机原理及应用,西安电子科技大学出版社,2004
[2]高吉祥,电子技术实验与课程设计指导,东南大学出版社,2007
[3]杨碧石,电子设计实训教程,电子工业出版社,2005
[4]黄仁欣,电子技术实践与训练,清华大学出版社,2004
附录:
1#include
2unsignedcharloop=0;
3unsignedcharsecond=0;
4unsignedcharminute=0;
5unsignedcharhour=0;
6unsignedcharLED7Code[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,
70x40,//'-'
80x00//熄灭
9};
10voiddelay(unsignedintn)
11{
121while(n--);
131}
14
15voiddisplay(unsignedcharaddr,unsignedcharLEDCode)
16{
171P2=addr;
181P0=LED7Code[LEDCode];
191delay(300);
201}
21
22voidtime0()interrupt1//定时器0
23{
241TL0=0xb0;
251TH0=0x3c;
261loop++;
271}
28
29voidmain()
30{
311TMOD=0x01;//定时器0,工作方式1,16位定时器
321TL0=0xb0;//装入初值15536,晶振:
12MHz,定时50000us
331TH0=0x3c;
341EA=1;
351ET0=1;
361TR0=1;
371while
(1)
381{
392if(loop==20)
402{
413second++;
423loop=0;
433}
442if(second==60)
452{
463second=0;
473minute++;
483}
492if(minute==60)
502{
513minute=0;
523hour++;
533}
542display(0,hour/10);
552display(1,hour%10);
本文是通过网络收集,如有侵权请告知,我会第一时间处理。