秒表系统的设计.doc

上传人:精*** 文档编号:879166 上传时间:2024-03-09 格式:DOC 页数:24 大小:486.50KB
下载 相关 举报
秒表系统的设计.doc_第1页
第1页 / 共24页
秒表系统的设计.doc_第2页
第2页 / 共24页
秒表系统的设计.doc_第3页
第3页 / 共24页
秒表系统的设计.doc_第4页
第4页 / 共24页
秒表系统的设计.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、电气与信息工程系课程设计任务书10/11学年 2学期 11年6月2日专业电力系统自动化班级电力09-9(1)课程名称单片机原理设计题目秒表系统的设计指导教师起止时间2011.5.30-2011.6.2周数1设计地点209设计目的:通过为期一周的单片机设计,完成秒表系统的设计原理及调试运行。设计任务或主要技术指标:1.设计启动、停止及清零按钮;2.设计一个精度为0.1S的秒表系统;*3.设计每到一秒钟有声音提醒功能,可以通过按钮打开和关闭提醒功能;*4.(创新功能) 其他功能;设计进度与要求:1.系统组成,确定,分析,系统框图,应用背景;2.硬件电路设计及原件清单;3.软件设计及系统流程图;4.

2、仿真调试;5.参考文献及总结;主要参考书及参考资料:1 单片机原理及应用:C语言版/周国运主编.-北京:中国水利水电出版社,20092全国计算机等级考试二级教程.C语言程序设计:2010年版/教育部考试中心.-北京:高等教育出版社,2007.8(2009重印)教研室主任(签名) 系(部)主任(签名) 年 月 日新疆工业高等专科学校电气与信息工程系课程设计评定意见设计题目: 秒表系统的设计 学生姓名: 专业 电力系统自动化 班级 评定意见:评定成绩: 指导教师(签名): 年 月 日评定意见参考提纲:1.学生完成的工作量与内容是否符合任务书的要求。2.学生的勤勉态度。3.设计或说明书的优缺点,包括

3、:学生对理论知识的掌握程度、实践工作能力、表现出的创造性和综合应用能力等。摘要近年来随着科技的飞速发展,单片机的应用正在不断的走向深入。本文阐述了基于单片机的数字电子秒表的设计。本设计的数字电子秒表系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和计数 原理,结合显示电路,LED数码管以及外部中断电路来设计计时器。将软件、硬件有机地结合起来,使得系统能够实现四位LED显示,能正确地进行计时。其中软件系统采用汇编语言编写的程序,包括显示程序,定时中断服务,外部中断服务程序,延时程序等,并在KEIL中调试运行硬件系统利用PROTEUS强大的功能来实现,简单且易于观察,在仿真中就可以

4、观察到实际的工作状态。关键字:单片机;数字电子秒表;仿真目录1 单片机简介11.1 单片机概念11.2 单片机的发展史11.2.1 4位单片机:11.2.2 8位单片机:11.2.3 16位单片机:11.2.4 32位单片机:11.2.5 64位单片机:21.3单片机的特点22.课程设计的目的和任务32.1单片机秒表课程设计的概述32.1.1 课程设计题目32.1.2 功能32.1.3 课程设计的难点32.2 课程设计的意义42.3课程设计任务和要求42.3.1.设计任务42.3.2.设计要求43电路图的绘制53.1 元件的选取及元件功能简介53.2 proteus电路图及连线原因63.3 程

5、序的编写73.4 调试及遭遇的问题解决方法11总结12致谢13参考文献14附录A15附录B19附录C20秒表系统的设计1 单片机简介1.1 单片机概念单片机全称为单片机微型计算机(Single Chip Microsoftcomputer)。从应用领域来看,单片机主要用来控制,所以又称为微控制器(Microcontroller Unit)或嵌入式控制器。单片机是将计算机的基本部件微型化并集成在一块芯片上的微型计算机。1.2 单片机的发展史1.2.1 4位单片机:1975年,美国德克萨斯仪器公司首次推出4位单片机TMS-1000;此后,各个计算机公司竞相推出四位单片机。日本松下公司的MN1400

6、系列,美国洛克威尔公司的PPS/1系列等。四位单片机的主要应用领域有:PC机的输入装置,电池充电器,运动器材,带液晶显示的音/视频产品控制器,一般家用电器的控制及遥控器,电子玩具,钟表,计算器,多功能电话等。 1.2.2 8位单片机:1972年,美国Intel公司首先推出8位微处理器8008,并于1976年9月率先推出MCS-48系列单片机。在这以后,8位单片机纷纷面市。例如,莫斯特克和仙童公司合作生产的3870系列,摩托罗拉公司生产的6801系列等。随着集成电路工艺水平的提高,一些高性能的8位单片机相继问世。例如,1978年摩托罗拉公司的MC6801系列及齐洛格公司的Z8系列,1979年NE

7、C公司的UPD78XX系列。这类单片机的寻址能力达64KB,片内ROM容量达4-8KB,片内除带有并行IO口外,还有串行IO口,甚至还有AD转化器功能。8位单片机由于功能强,被广泛用于自动化装置、智能仪器仪表、智能接口、过程控制、通信、家用电器等各个领域。1.2.3 16位单片机:1983年以后,集成电路的集成度可达几十万只管/片,各系列16位单片机纷纷面市。这一阶段的代表产品有1983年Intel公司推出的MCS-96系列,1987年Intel推出了80C96,美国国家半导体公司推出的HPC16040,NEC公司推出的783XX系列等。16位单片机主要用于工业控制,智能仪器仪表,便携式设备等

8、场合。1.2.4 32位单片机:20世纪80年代末推出了32位单片机,如Motorlora公司的MC683XX系列,Intel的80960系列,以及近年来流行的ARM系列单片机。32位单片机是单片机的发展趋势,随着技术的发展及开发成本和产品价格的下降。1.2.5 64位单片机:近年来,64位单片机在引擎控制,智能机器人,磁盘控制,语音图像通信,算法密集的实时控制场合已有应用,如英国Inmos公司的Transputer T800是高性能的64位单片机。1.3单片机的特点 1)单片机的存储器ROM和RAM时严格区分的。ROM称为程序存储器,只存放程序,固定常数,及数据表格。RAM则为数据存储器,用

9、作工作区及存放用户数据。2)采用面向控制的指令系统。为满足控制需要,单片机有更强的逻辑控制能力,特别是单片机具有很强的位处理能力。3)单片机的I/O口通常时多功能的。由于单片机芯片上引脚数目有限,为了解决实际引脚数和需要的信号线的矛盾,采用了引脚功能复用的方法,引脚处于何种功能,可由指令来设置或由机器状态来区分。 图1.1 AT89C51引脚图2.课程设计的目的和任务2.1单片机秒表课程设计的概述2.1.1 课程设计题目设计利用AT89C51单片机为核心控制元件,结合数码管、三极管、发光二极管等器件构成一个显示值达99.99的电子秒表。利用单片机的延时电路、按键复位电路、定时中断等电路,实现电

10、子秒表的启动、保存、翻页查看、停止的功能和数码管的动态显示的功能。2.1.2 功能此次实训设计的电子秒表可以实现以下功能:用开关K0实现秒表的启动,用开关K1实现秒表的数据保存,用开关K2实现秒表的数据的翻页查看,用开关K3实现秒表的停止;将数据显示在数码管上,供使用者数取。2.1.3 课程设计的难点单片机电子秒表需要解决三个主要问题,一是有关单片机定时器的使用;二是如何实现LED的动态扫描显示;三是如何对键盘输入进行编程。按键模块K0:start启动,K1:save保存数据,K2:look查看数据,K3:stop停止;将四个按键与P1.0、P1.1、P1.2和P1.3想接。通过扫描按键,读取

11、按键实现四个功能的控制。AT89C51单片机与数码管的显示模块该部分由两个四段的共阳极LED 数码管组成,用来显示秒表的秒值,数码管的使能端接到P2.4、P2.5、P2.6和P2.7上,其余8个引脚分别单片机P1口相连,根据单片机引脚与数码管的连接关系,可以列出显示不同数字的段选码。从而准确的输出秒表的正确秒值和保存的数据秒值。时钟模块单片机必须在时钟的驱动下才能工作.在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元, 外接晶体以及电容C1 和C2 构成并联谐振电路接在放大器的反馈回路中,决定单片机的工作速度。复位模块一般选用石英晶体振荡器。此

12、电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容 C1,C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。电容的大小会影响振荡器频率的高低、振荡器的稳定性、起振的快速性和温度的稳定性,晶体频率可在1. 2MHz12MHz 之间任选,电容C1 和C2 的典型值在20pF100pF 之间选择。C1,C2的典型值为30PF。89C51的复位输入引脚RST 为89C51提供了初始化的手段,可以使程序从指定处开始执行,在89C51的时钟电路工作后,只要RST 引脚上出现超过两个机器周期以上的高电

13、平时,即可产生复位的操作。只要RST 保持高电平,则单片机循环复位。只有当RST 由高电平变低电平以后,89C51才从0000H 地址开始执行程序。本系统采用按键复位方式的复位电路。2.2 课程设计的意义1.通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。2.掌握定时器、外部中断的设置和编程原理。3.通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。4.该课程通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义2.3课程设计任务和要求2.3.1

14、.设计任务1)设计一个精度为0.1S的秒表系统;2)设计启动、停止按钮及清零按钮;*3)设计每到一秒钟有声音提醒功能,可以通过按钮打开及关闭该提醒功能;*4)(创新功能)其他功能;2.3.2.设计要求1)能同时记录四个相对独立的时间并分别显示。 2)两位LED显示,显示时间为0099秒。3)每秒自动加1。 4)一个启动按钮、一个停止按钮、一个清零按钮。 本系统中,硬件电路主要有电源电路,晶振电路,复位电路,显示电路,以及一些按键电路等3电路图的绘制3.1 元件的选取及元件功能简介AT89C51(如下图)图3.1 AT89C51管脚图89c51是一个40引脚的芯片,其中继承了运算器、控制器、存储

15、器,是一个高度集成的芯片,可将编写编译后的程序下载到芯片中去,实现某一功能。LED数码管(如下图)图3.2 LED数码管LED数码管采用的是有发光二极管按一定的结构组合起来的显示器件。本次实训采用的是共阳极的方式。AG因脚输入不同的二进制编码可显示不同的数字。而且本次实训采用的是软件破译方式,通过译码程序来得到要显示的数字的字段码。三极管(如下图)图3.3 三极管三极管在此与P2.4-P2.7相连,起到位选的作用。排阻(如下图)图3.4 排阻3.2 proteus电路图及连线原因电子秒表的电路图图3.5电子秒表的电路图如图:P0.0P0.7作为数码管显示的输入信号,作为数码管AG以及DP的输入

16、端,通过软件破译的方式并根据共阳极的数码管成功显示数字,同时破译的数字为Uchar code BCD_711=0x02,0x9e,0xa0,0x88, 0x1c,0x48,0x40,0x9a,0x00,0x08, 0xff;/ 0, 1, 2, 3,4,5,6,7,8,9,灭P2.4P2.7作为位选信号,与数码管的1,2,3,4相连,同事结合三极管的驱动完成数码管的位选。P1.0P1.3与K0,K1,K2,K3四个开关相连,同时结合程序的键盘扫描功能实现开关的控制功能。P1口可以实现I/O输入输出。3.3 程序的编写程序框图(流程)开始定时器计数器2初始化显示缓冲区初始化开中断键盘扫描是否有键

17、盘输入?键号送k判断是否为start键判断是否为stop键判断是否为look键判断是否为save键定时计数器2中断停止计时将数据保存停止后查看数据显示显示YYYYNYNkeilc的使用步骤打开桌面上的Keil软件:(1)新建项目文件。点击Project 菜单,选择弹出的下拉式菜单中的New Project。在“文件名”中输入您的第一个C 程序项目名称, “*.uv2”。“保存”后的文件扩展名为uv2,这是KEIL uVision2 项目文件扩展名,以后可以直接点击此文件以打开先前做的项目。图 3.62)选择所要的单片机,常用Ateml 公司的AT89C51。图 3.73)在项目中创建新的程序文

18、件。点击新建文件的快捷按钮,出现一个新的文字编辑窗口,这个操作也可以通过菜单FileNew 或快捷键Ctrl+N 来实现。好了,现在可以编写程序了。4)点击保存新建的程序,*.c,保存在项目所在的目录中,这时会发现程序单词有了不同的颜色,说明KEIL的C 语法检查生效了。图3.85)将程序文件加到项目中。在屏幕左边的Source Group1 文件夹图标上右击弹出菜单,在这里可以做在项目中增加减少文件等操作。选“Add File to Group Source Group 1”弹出文件窗口,选择刚刚保存的文件,按ADD 按钮,关闭文件窗,程序文件加到项目中。这时在Source Group1 文

19、件夹图标左边出现了一个小+号说明,文件组中有了文件,点击它可以展开查看。图 3.96)设定创建HEX文件选项。上一步建立了单片机C语言项目,但为了让编译好的程序能通过编程器写入51芯片中,要先用编译器生成HEX文件。HEX文件格式是Intel公司提出的按地址排列的数据信息,数据宽度为字节,所有数据使用16进制数字表示, 常用来保存单片机或其他处理器的目标程序代码。它保存物理程序存储区中的目标代码映象。一般的编程器都支持这种格式。我们先来打开项目,打开它的所在目录,找到*.Uv2的文件就可以打开先前的项目了。然后右击项目文件夹,弹出项目功能菜单,选Options for TargetTarget

20、1,弹出项目选项设置窗口,同样先选中项目文件夹图标,这时在Project菜单中也有一样的菜单可选。打开项目选项窗口,转到Output选项页。设定:1选择编译输出的路径,2编译输出生成的文件名,3决定是否要创建HEX文件,选中3就可以输出HEX文件到指定的路径中。图3.107)编译运行。8)查错并直至无错误。3.4 调试及遭遇的问题解决方法将我们项目组所编写的电子秒表的程序下载到芯片中,调试程序。遇到的问题就是数码管不能正确的显示。没有正确编写数码管的显示程序,将小数点的显示位置改正,同时实验板的数码管采用的是共阳的数码管显示,因为0亮1不亮,必须严格按照这个来编写程序。最后我们终于克服了这个困

21、难,让数码管的后四个显示00.0099.99,完成了实训的项目。反复进行测试,对四个按键分别进行测试,检查是否完成预定的四个功能:启动、保存数据、查看数据、停止。是否实现了定时/计数器中断。总结通过这个为期一周的单片机设计使我对AT89C51单片机有了更一层深入的了解,同时加强了动手实践能力。在这次设计中虽然也遇到了各种困难,但是一个组的人员一起克服了,大家一起才能完成项目,同时进一步巩固了课本上的理论知识,将学习的理论基础知识又加深了一遍,同时认识到我们所学的知识还是远远不够的,我们需要不断学习提升自己的能力,还有编程能力和考虑问题的全面性方面。在设计中有好多问题都是因为理论知识不扎实,在有

22、些管脚的置零置一上,概念的模糊,这使作者明白要把所学到的理论转化为实践需要一段努力学习的过程;在做一个设计的过程中,一定要注意理论和实践同步进行,光有理论知识还是远远不够的,要用时间去检验理论,用理论指导实践。最近几年,科学发展很快,渗透在工农业生产的许多领域。通过课程设计我们有了更深的认识,只有在设计制作的过程中不断的学习才能有更新的进步.不论在什么地方,什么岗位我门都要以学为主.学以学以置用.才能把我们的工作做的更好。致谢此次设计的圆满完成首先要感谢指导老师申红军老师的指导,为我们的设计提供理论解答,其次感谢我们的组员,谢谢他们认真的找资料,耐心的一次次的调试程序,最终完成秒表的设计。最后

23、感谢我们的学校给我们提供的设计机会,给我们提供的环境和场所。参考文献1 单片机原理及应用:C语言版/周国运主编.-北京:中国水利水电出版社,20092全国计算机等级考试二级教程.C语言程序设计:2010年版/教育部考试中心.-北京:高等教育出版社,2007.8(2009重印) 附录A程序代码#include reg51.h#define uchar unsigned char#define uint unsigned int#unsigned char key_times; #define start 0xfe#define save 0xfd#define look 0xfb#define

24、stop 0xf7uint times_10ms;idata uint s12;uchar s_ptr;uchar d4;void delay()uchar i,j;for(i=0;i10;i+)for(j=0;j0;t-)for(i=0;ii;delay();P2&=0x00;uchar Read_key()uchar k;P1=0xff;k=P1;if(k=0xff)return 0xff;elsedelay();k=P1;if(k=0xff)return 0xff;else return k;main()uchar i,k;uint tem;uchar run_sign;TH2=RCAP

25、2H=(65536-10000)/256;TL2=RCAP2L=(65536-10000)%256;EA=1;ET2=1;EX0=0;times_10ms=0;s_ptr=0;for(i=0;i12;i+)si=0;for(i=0;i=9999)times_10ms=0;d3=tem/1000;d2=tem/100%10;d1=tem/10%10;d0=tem%10;display(1);void t2_overFlow(void) interrupt 5 using 3if(TF2)TF2=0;times_10ms+;EXF2=0;附录B原理图附录C原件清单原件名称型号数量备注单片机芯片AT89C511LED显示屏三极管90134NPN晶振112MHZ有极性电容110uf无极性电容230nf电阻若干10K开关若干单刀单掷其他74LS244220

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 毕业设计

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922