版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、倒计时系统设计河南农业职业学院 专科毕业设计(论文) 题 目 倒计时系统设计 学生姓名 专业班级 所 在 系 指导教师 倒计时系统设计摘 要:本论文针对倒计时系统的设计的需求,介绍了mcs-51单片机的部分基本原理,如51单片机的接口功能、中断、定时器等等。倒计时系统需要用到锁存器、矩阵键盘、led数码显示器等主要模块,通过不同的模块之间相互作用,完成倒计时的初步硬件结构。对于倒计时器中的led数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即采用keil uvision3软件程序进行译码。关键词 : 倒计时器/单片机/矩阵键盘/keil uvision3/led数码显示器
2、 the design of countdown system abstract:this paper focuses on the needs of the countdown system design, introduced the mcs-51 mcu of some of the basic as the 51 single-chip interface functions, interrupt, timer and so on. countdown system needs to use latch, matrix keyboard, led digital display and
3、 other major modules, through interaction between different modules to complete the countdown to the initial hardware. the countdown device in the led digital display, in order to simplify the circuit, reduce costs, we adopt a software-based interface method, namely using keil uvision3 software prog
4、ram for decoding. keywords: counter-down,scm,matrix keyboard,keil uvision3,led digital display iiiiii目 录中文摘要i英文摘要ii目 录.iii第一章 引言1课题开发的作用及意义1发展方向2第二章 原理设计3设计任务与要求3方案设计与论证3系统框图4第三章 器件的选择及介绍5 单片机at89s515 主要功能特性5 at89s51的引脚说明6 单片机定时器的使用8 显示器件选择8第四章 硬件电路的设计10第五章 各部分电路介绍11 复位电路11 时钟电路12 按键电路13 蜂鸣器电路14 数码管
5、显示电路14第六章 软件设计与流程图16倒计时器主程序流程图16定时器0的中断程序流程图17定时器1的中断程序流程图18第七章 pcb制板图及仿真图20 pcb制板图20 整体电路仿真图以及仿真结果分析21第八章 安装与调试23 电路安装23 电路调试23 性能测试与分析23结束语24致 谢25参考文献26附 录272第一章 引言1.1 课题开发的作用及意义随着社会的发展人们对时间的要求越来越精确,而倒计时的应用也越来越广泛比如;奥运会开幕式的倒计时,篮球比赛的倒计时器,还有爆破时用的倒计时器等等。现在单片机的应用在我们的生活中随处可见,这体现了它的重要性与实用性。它从根本上改变了传统的控制系
6、统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。本次设计的倒计时器就是采用的微控制计数的方法实现的。计时器在单片机模块中是比较常见的的一个模块,计时器是一种用数字电路技术实现计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。本次设计的最大时间为365天,此次设计倒计时器为基础,还可以设计更多对日常生活密切相关的设备,诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断
7、动力设备、甚至各种定时电气的自动启用等,都是以计时器为基础的。通过对基于单片机控制的倒计时器的设计的过程中,让我对单片机的知识有一个初步解,在学习单片机基础知识的同时,结合c语言学习,实现一些简单的功能的设计,做到了主动学习和探索。本设计不但节约成本,而且功能齐全,不但能实现倒计时器的功能,而且还能实现其他多种功能,如倒计时秒表、定时器等等。而且由于本次这个基于51单片机的365天倒计时器无论是硬件方面还是在软件程序设计方面都比较简单,所以还可以通过扩展完成其他的功能,而且功能的相互转换也非常简单。若作为一个部件生产产品,有很大的挖掘价值,也非常有吸引力。1.2 发展方向倒计时系统的任务,就是
8、对某一设定日期进行倒数,在显示屏显示当前距离设定日期的时间;广泛应用于重大的节日或活动,以增强人们的关切程度和紧迫感倒计时系统的开发在国内起步于80年代初期,至今已得到广泛的发展和应用。期间,随着新材料技术、电子传感技术、数字通信技术、控制技术、微计算机技术、软件技术和网络技术的迅速发展,监测系统还朝着网络化、社会化、光缆传输、总线结构等方面发展。而且随着超大规模数字集成电路、单片机技术的飞速发展,利用单片机及其它外围芯片实现对瓦斯的监测成为一种可能,并且成为一种发展趋势。它具有体积小、操作简单、携带方便、功能较齐全等优点,而且性能价格比也很高,应用前景非常广泛。第二章 原理设计2.1 设计任
9、务与要求本项目是由单片机接收小键盘设定倒计时时间,倒计时时间最大范围是365天,由显示模块数码管显示剩余时间。显示格式为 ,分别对应天,时,分和秒,精确到1秒的整数倍。倒计时时间到,则由蜂鸣器发出报警声。2.2 方案设计与论证近年来随着计算机在社会领域的渗透,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。现在,在许多领域中,定时器得到了广泛的应用,比如在体育比赛中的计时器;安全措施中的定时报警器;游戏中的倒计时;维持秩序的交通信号灯;红路灯,交通控制器,闹钟等等。可见倒计时器在社会中的重要性。当然,设计倒计时器的方法很多,以下是两个设计方案。方案一:基于at89s51单片机
10、的lcd液晶显示模块1602显示的倒计时器。主要是以单片机来控制,用按键来设定倒计时初始时刻的值,lcd1602液晶作为显示模块来显示剩余的时间。方案二:基于at89s51单片机的数码管显示模块显示的倒计时器。主要是以单片机来控制,用按键来设定倒计时初始时刻的值,数码管作为显示模块来显示剩余的时间。此电路对于倒计时器中的led数码管示器来说,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。方案比较:通过以上两个方案,我们发现,方案二总体比方案一好。首先方案一虽然硬件电路简单,但造价较高,且在编写程序实现所要求的功能时较难,而方案二所用的显示模块是比较熟悉的数码管,编
11、写程序是相对容易,且电路造价不高,因此,综合考虑之后决定采用方案二。2.3 系统框图led数码管倒计时器以at89s51单片机为核心,起着控制作用。系统包括九位数码管显示电路,按键电路,复位电路,晶振电路,时钟电路以及蜂鸣器电路等组成。倒计时的总体框图如下图1-1所示:at89s51按键电路模块复位电路晶振电路模块数码管显示电路模块蜂铃器图1-1 倒计时总体框图 有图1-1可以看出该系统的硬件部分设计是以单片机系统为核心,用于整个设计的数据处理及控制显示电路,由蜂铃器组成的报警电路的正常工作。在这里我们选用atmel公司生产的8位单片机at89s51,该种单片机与以往所采用的at89c51相比
12、新增加了很多功能,性能有了较大提升,片内4k的flash存储空间也能满足我们设计的要求,价格较之at89c51基本不变甚至更低。第三章 器件的选择及介绍 单片机at89s51at89s51是一种低功耗高性能的8位单片机,片内带有一个4kb的flash在线可编擦除只读存储器,它采用了cmos工艺和atmel公司的高密度非易失性存储器技术,而且其输出引脚和指令系统和51系列单片机兼容。片内的存储器允许在线重新编程或用常规的非易失性存储器编程器来编程。同时已具有三级程序存储器保密的性能。在众多的51系列单片机中,要算atmel公司的at89s51更实用,因为它不仅和mcu-51系列单片机指令、管脚完
13、全兼容,而且它将通用cpu和在线可编程flash集成在一个芯片上。这种单片机对开发设备的要求很低,开发时间也大大缩短。写入单片机的程序还可以加密,功能较之89c51更加强大,使用也更加灵活。 主要功能特性4kb的flash在线可编擦除只读存储器,擦写可达1000次具有断电标志pof 具有两个数据指针dptr0和dptr1兼容mcs-51指令系统 32个双向i/o口两个16位可编程定时/计数器振荡频率033mhz1个串行中断 128x8 bit内部ram两个外部中断源 共6个中断源可直接驱动led 包含3级程序锁定位低功耗空闲和掉电模式 具有片内看门狗定时器由上可知与at89c51相比,at89
14、s51具有更突出的优点,主要表现在:新增加了在线可编程功能isp,在现场程序调试和修改更加方便灵活;数据指针增加到两个,方便了对片外ram的访问过程;新增加了片内看门狗定时器wdt,提高了系统的抗干扰能力;增加了断电标志;增加了掉电状态下的中断恢复模式。 at89s51的引脚说明at89s51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(i/o)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,at89s51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和flash存储器结合在一起,特别是可反复擦写的flash存储器可有效地降低开发成
15、本。图3-1 at89s51引脚图vcc(40脚):供电电压。gnd(20脚):接地。p0口(32脚39脚):p0口为一个8位漏级开路双向i/o口,每脚可吸收8ttl门电流。当p1口的管脚第一次写“1”时,被定义为高阻输入。p0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在fiash编程时,p0 口作为原码输入口,当fiash进行校验时,p0输出原码,此时p0外部必须被拉高。p1口(1脚8脚):p1口是一个内部提供上拉电阻的8位双向i/o口,p1口缓冲器能接收输出4ttl门电流。p1口管脚写入“1”后,被内部上拉为高,可用作输入,p1口被外部下拉为低电平时,将输出电流,这是由
16、于内部上拉的缘故。在flash编程和校验时,p1口作为第八位地址接收。p2口(21脚28脚):p2口为一个内部上拉电阻的8位双向i/o口,p2口缓冲器可接收,输出4个ttl门电流,当p2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,p2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。p2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,p2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,p2口输出其特殊功能寄存器的内容。p2口在flash编程和校验时接收高八位地址信号和控制信号。p3口(10脚17脚)
17、:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。当p3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,p3口将输出电流(ill)这是由于上拉的缘故。p3口也可作为at89s51的一些特殊功能口,p3口管脚备选功能如下表所示:表3-1 p3口第二功能引 脚第 2 功 能rxd(串行口输入端)txd(串行口输出端)/int0(外部中断0请求输入端,低电平有效)/int1(外部中断1请求输入端,低电平有效)t0(定时器/计数器0计数脉冲输入端) t1(定时器/计数器1计数脉冲输入端)/wr(外部数据存储器写选通信号输出端,低电平有效)
18、/rd(外部数据存储器读选通信号输出端,低电平有效)p3口同时为闪烁编程和编程校验接收一些控制信号。rst(9脚):复位输入。当振荡器复位器件时,要保持rst脚两个机器周期的高电平时间。ale/prog(30脚):当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在flash编程期间,此引脚用于输入编程脉冲。在平时,ale端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ale脉冲。如想禁止ale的输出可在sfr8eh地址上置0。此时, ale只有在执行movx,movc
19、指令是ale才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ale禁止,置位无效。 /psen(29脚):外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/psen有效。但在访问外部数据存储器时,这两次有效的/psen信号将不出现。/ea/vpp(31脚):当/ea保持低电平时,则在此期间外部程序存储器(0000h- ffffh),不管是否有内部程序存储器。注意加密方式1时,/ea将内部锁定为reset;当/ea端保持高电平时,此间内部程序存储器。在flash编程期间,此引脚也用于施加12v编程电源(vpp)。xtal1(19脚):反向振荡放大器的输入及内部时
20、钟工作电路的输入。xtal2(18脚):来自反向振荡器的输出。 单片机定时器的使用本系统所用到的at89s52有3个16位的定时器,而本系统只用到了定时器0和定时器1,所使用的工作方式都是定时器工作方式1,方式1时16位计数结构的工作方式,计数器由th0或th1的全部8位和tl0或tl1的全部8位构成。使用工作方式1功能时,定时时间计算公式是:(65536-计数初值)*机器周期机器周期=晶振周期*12本系统所用到的定时器0的定时时间是1ms;定时器1的定时时间是10ms;而电路所用的晶振是12mhz,算得一个机器周期为1us,因此由以上的公式可知定时器0的初值tho是0xfc,tlo是0x18
21、;定时器1的初值th1是0xd8,tl1是0xf0 显示器件选择led数码管由于其成本低、驱动电路简单、配置灵活、与单片机接口简单等诸都优点,被广泛应用于单片机应用系统中。因此我们选用led数码管作为显示器件。数码管的工作原理如下:数码管由8个led发光二极管组成,外形如图3-3所示。ag和dp为8个发光二极管,其中ag用于显示字符,dp用于显示小数点。当发光二极管正向导通时,借着点亮每一段的led就可以显示出数字。在数码管中,若将二极管的阳极连在一起,称为共阳极数码管;而若将二极管的阴极连在一起,称为共阴极数码管,本设计采用的就是共阴极接法的数码管。下图是八段数码管的引脚:图3-3 led引
22、脚图各段码位的对应关系如下表:表3-2 段码位与显示位对应关系表段码位d7d6d5d4d3d2d1d0显示段dpgfedcba字型和对应的共阴极段码如下表: dec 47h查出显示码送p2口并调用显示延时2ms选通个位,显示码表地址送dptr从70h取出显示码送累加器a显示延时计数器47h等0么? dec 47h查出显示码送p2口并调用显示延时2ms选通个位,显示码表地址送dptr从70h取出显示码送累加器a显示延时计数器47h等0么?表3-3 十六进制数及空白字符与p的显示段码字型共阴极段码字型共阴极段码03fh96fh106ha77h25bhb7ch34fhc39h466hd5eh56dh
23、e79h67dhf71h707h空白00h87fhp73h注:(1)本表所列各字符的显示段码均为小数点不亮的情况;(2)空白字符即没有任何显示第四章 硬件电路的设计本设计分为硬件设计和软件设计,这两者相互结合,不可分离;从时间上看,硬件设计的绝大部分工作量是在最初阶段,到后期往往还要做一些修改。只要技术准备充分,硬件设计的大返工时比较少的,软件设计的任务贯彻始终,到中后期基本上都是软件设计任务,随着集成电路技术的飞速发展,各种功能很强的芯片不断出现,是硬件电路的集成度越来越高,硬件设计的工作量在整个项目中所占的比重逐渐下降。为使应硬件电路设计尽可能合理,应注意以下几个方面:(1)尽可能采用功能
24、强的芯片,以简化电路,功能强的芯片可以代替若干普通芯片,随着生产工艺的提高,新型芯片的价格不断下降,并不一定比若干普通芯片的价格总和高。(2)留有设计余地。在设计硬件电路时,要考虑到将来修改扩展的方便。因为很少有一锤定音的电路设计,如果现在不留余地,将来可能要为一点小小修改或扩展而被迫进行全面返工。(3)程序空间,选用片内程序空间足够大的单片机,本设计采用at89c51单片机。(4)ram空间,at89c51内部ram不多,当要增强软件数据处理功能时,往往觉得不足。如果系统配置了外部ram,则建议多留一些空间。随着软件设计水平的提高,往往只要改变或增加软件中的数据处理算法,就可以是系统功能提高
25、很多,而系统的硬件不必做任何更换就使系统升级换代。只要在硬件电路设计初期考虑到这一点,就应该为系统将来升级足够的ram空间,哪怕多设计一个ram得插座,暂不插芯片也好。(5)i/o端口;在样机研制出来进行现场使用时,往往会发现一些被忽视的问题,而这些问题不是靠单纯的软件措施来解决的。如有些新的信号需要采集,就必须增加输入检测端:有些物理量需要控制,就必须增加输出端。如果在硬件电路设计就预留出一些i/o端口,虽然当时空着没用,但是需要用的时候就派上用场了。第五章 各部分电路介绍 复位电路复位是单片机的初始化操作,只需给at89s52的复位引脚rst加上大于2个机器周期(即24个时钟振荡周期)的高
26、电平就可得单片机复位,复位时,pc初始化为0000h,使单片机从out单元开始执行程序。除了进入系统的正常初始化之外由于程序运行出错或操作错误而使系统处于死锁状态,为摆脱死锁状态,也需按复位键使得rst脚为高电平,使单片机重新启动。在系统中,有时会出现显示不正常,也为了调试方便,我们需要设计一个复位电路,at89s52单片机复位电路共有上电复位、按键电平复位和按键脉冲复位。本系统是的复位电路主要完成系统的上电复位和系统在运行时用户的按键复位功能。复位电路可由简单的rc电路构成,也可使用其它的相对复杂,但功能更完善的电路。本系统采用的电路如图5-1所示。工作原理是:上电瞬间,rc电路充电,res
27、et引脚端出现正脉冲,只要reset保持10ms以上高电平,就能使单片机有效的复位。当时钟频率选用12mhz时,c取10uf,r取10k。上电自动复位电路由上电瞬间c与r构成充电电路,reset端的电位与电源vcc相同,随着充电电流的减少,reset的电位逐渐下降。图中rc时间常数越大,上电时reset端保持高电平的时间越长,图中这组参数足以保证复位操作。若复位电路失效,加电后cpu从一个随机的状态开始工作,系统就不能正常运行。图中的按键s5的功能是按键复位,按下s5键时rst为高电平,只要保持10ms以上的高电平,就可以时单片机复位。按键复位用在系统运行时的复位,使系统重新运行。复位电路如下
28、图所示。图5-1 复位电路原理图 时钟电路时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊地一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统稳定性。常用的时钟电路有两种方式,一种是内部时钟方式,另一种是外部时钟方式。单片机必须在时钟的驱动下才能工作。在单片机内部有一个时钟振荡电路,只要外界一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。本系统使用的是内部时钟方式。时钟电路如下图5-2所示。图5-2时钟电路原理图一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在xtal2引脚产生幅度为
29、3v左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容c1、c2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。本系统的c1、c2的值为30pf。单片机在工作时,有内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期。其大小是时钟信号频率的倒数,f表示。图5-2中的时钟频率为12mhz,即f=12mhz,则时钟周期为1/12us。 按键电路本系统的按键电路的作用是能够调整倒计时的初始值,倒计时是按天、时、分、秒顺寻排列显示的,用四个按键分别设定天、时、分、秒,所达到的效果是按一下对应的键时,所对应的值加一。在程序中用k4对应天的设定
30、,k3对应时的设定,k2对应分的设定,k1对应秒的设定。另外k1按键不但作为可以设定秒的初值,还可以起到暂停倒计时运行的作用;即当系统在运行时,按k1键,系统暂停,如果继续按k1键,则秒的值增加,完成的是设定秒的功能。同样,k4也有两个功能。一个是设定天的初值,一个是起到开启系统的作用,即当系统处于暂停时,按k4键,则系统开始运行,如果继续按k4键,则完成的是设定天的初值的功能。按键电路如下图5-3所示。图5-3按键电路原理图 蜂鸣器电路蜂鸣器电路是由一个有源蜂鸣器、一个电阻和一个开关三极管组成。此电路的作用是倒计时时间到零时,蜂鸣器发出报警声。在本系统中,是利用单片机的p21口来控制,p21
31、为低电平时,三极管导通,蜂鸣器报警。电路如下图5-4所示。图5-4蜂鸣器电路原理图 数码管显示电路显示功能与硬件关系极大,当硬件固定后,如何在不引起操作者误解的前提下提供尽可能丰富的信息,全靠软件来解决。在这里我们使用的是8段数码管显示(包含小数点),通常在显示上我们采用的方法一般包括两种:一种是静态显示,另一种是动态显示。其中静态显示的特点是显示稳定不闪烁,程序编写简单,但占用端口资源多,所耗得电能较大;动态显示的特点是显示稳定性没静态好,程序编写复杂,但是相对静态显示而言占用端口资源少。在本设计中,为了减少端口资源,降低电能消耗,采用的是动态显示方法。本系统的倒计时时间的最大范围是365天
32、,要求精确到秒,显示格式是按天、时、分、秒的顺序即。从格式可知数码管显示电路要用到9位数码管。考虑到到数码管的段和位比较多,本系统选着了两个4位一体的共阳数码管和一个一位的共阳数码管。数码管有段选和位选控制,在此电路中有9个位选,8个段选(每一个数码管的段选进行并联)。分别用单片机的p3口和p20进行9个位的控制。而用单片机的p0口来控制段。电路如下图5-5所示。 图5-5数码管显示电路原理图第六章 软件设计与流程图本系统中,是利用软件和硬件相互结合,以实现电路功能。软件在系统中起着举足轻重的作用,利用程序对硬件达到控制作用。因此下面说明软件的实现。6.1 倒计时器主程序流程图程序的的开始时初
33、始化数码管的段选和位选,数码管不显示。程序中用到了两个定时器,接下来先设定定时器0和定时器1的工作方式,并且给两个定时器装初值,定时器0的定时时间是1ms,用作扫描数码管显示,定时器1的定时时间是10ms,用作定时器时间的递减。然后给定时器设定初值,开启定时器0。最后进入死循环函数,在循环函数中,对按键进行扫描,如果有键按下,执行按键函数,并检查是否需要报警。如果没有按键按下,则直接检查是否需要报警。流程图如下图6-1所示: 开始初始化p0口和p3口,全置为高电平设定定时器0,1工作方式给定时器0,1设初值开启定时器0设定倒计时的初值有按键按下?否是 是是执行按键功能函数prockey();执
34、行报警程序执行报警程序图6-1 倒计时器主程序流程图6.2 定时器0的中断程序流程图定时器0的定时时间是1ms,用作扫描数码管显示,在定时器0开启时,定时器0开始定时,此时主程序正常运行,当定时器0的定时时间到时,主程序不在执行,开始进入中断程序,在中断程序中,对9位数码管进行动态扫描。中断程序执行完后返回主程序。如图6-2所示。执行主程序执行一条指令 定时器0有中断请求?否是 是是取下一条指令保护现场和断点定时器0中断服务程序(完成数码管各位的扫描)恢复现场返回图6-2 定时器0的中断程序流程图6.3 定时器1的中断程序流程图定时器1的定时时间是10ms,用作是倒计时时间以秒来自减,在定时器
35、1开启时,定时器1开始定时,此时主程序正常运行,当定时器0的定时时间到时,主程序不在执行,开始进入中断程序,在中断程序中,设定倒计时的时间变化。中断程序执行完后返回主程序。如图6-3所示。执行一条指令 定时器1有中断请求?否是 是是取下一条指令保护现场和断点定时器1中断服务程序(完成时间以秒为最小单位递减)恢复现场返回执行主程序图6-3 定时器1的中断程序流程图第七章 pcb制板图及仿真图 pcb制板图本系统把总电路图分成两个模块来画pcb,一个是最小系统模块,另一个是显示模块。(1) 倒计时器最小系统模块,如下图7-1。图7-1 倒计时器最小系统模块(2) 倒计时器显示模块,如下图7-2。图
36、7-2 倒计时器显示模块 整体电路仿真图以及仿真结果分析系统仿真用的是proteus软件,可通过仿真显示出所设计系统的功能,对于程序的调试等有很大的帮助。系统仿真时首先在使用keil c 译码器,把所写的程序进行编译,同时在仿真器里设置生成hex文件,编译无错误进行proteus仿真。等所有的原件都连接完成后可以把keil c编译生成的无错误文件加载到at89c51中,方法是,右键点中器件然后再用左键点击,出来一个对话框在program file后选择要添加的文件,文件要求必须是hex文件。然后可以点击运行观察现象,看与自己设置的是否符合,如果不相符再查找错误进行修改,一般的错误都是程序中的,
37、所以要认真的读取程序的每一个部分。系统的仿真图如下图7-3所示。图7-3 倒计时器仿真图启动proteus软件的play按钮,出现如上图7-2所示,以上四个开关分别设定倒计时的天,时,分,秒的值。并且设定天的按键还可以开启倒计时,设定秒的按键也可以暂停倒计时。当天,时,分,秒的值全为0时,发出报警声。从仿真图可知,本系统的程序已达到要求。在此电路系统的仿真中,应该注意的问题有数码管的minimum trigger time项设定的值要合适,此电路中设定为1us。还有就是在程序中数码管的扫描时间要合适。以保证数码管显示稳定,不闪烁。第八章 安装与调试 电路安装本系统考虑到数码管的段选和位选比较多
38、,连线较复杂,如果用万用表焊接,工作量大,因此采用覆铜板打印电路来焊接。方便简洁。在安置元器件前先认真观察印制电路板,是否有短路现象。再用万用表测试电路的连线情况,以保证印制板的电气连接完全正确。但在安装元器件时,要认真对照pcb,元器件要一一图中的位置放置。引脚不能放反。否则硬件电路将不会出结果。 电路调试在硬件调试时,先有万用表检查印制电路的焊接情况,检查是否有虚焊,是否有短路。在检查无误之后通电检查led数码管的显示。开始时,数码管的亮度不够理想。经检查知,是段选电阻(接p0口的限流电阻)太大。最后,换成470欧的电阻后,数码管显示正常。总体电路正常,达到题目的要求。 性能测试与分析按照
39、设计程序的分析,led数码管的动态扫描的频率是1000hz,在实际使用时完全没有闪烁。在程序中,定时器10ms中断一次,变量 sec100自增,中断100次时,秒的显示自减,用定时器来定时,准确。电路中的四个按键可以分别用来设定倒计时的天,时,分,秒。另外,设定天的按键还可以用来开启倒计时,设定秒的按键还可以暂停倒计时。当数码管的显示全0时,蜂鸣器报警。系统由5v电源来驱动,经过测是试与分析,此系统稳定可用。结束语在设计制作365天倒计时器的过程中,我深切体会到,实践是理论运用的最好检验。本次设计是对我三年所学知识的一次综合性检测和考验,无论是动手能力还是理论知识运用能力都得到了提高,同时加深
40、了我对网络资源认识,大大提高了查阅资料的能力和效率,使我有充足的时间投入到电路制作当中。本系统的制作主要应用到了模拟电子技术、数字电子技术、单片机控制技术、电子工艺等多方面的知识。在硬件调试过程中,我也学会不少的东西,掌握一些调试方法。在设计仿真图和编些程序中,对proteus和keil等软件掌握的更加牢固,而且所设计的基于单片机的365天倒计时器,精确度高,达到了应用要求。致 谢大学的学习即将结束,在此期间,我处于紧张的学习和生活当中。08级的电气自动化技术专业是一个有着积极奋进,充分活力的集体。在这里,我感受到了浓厚的学习气氛,接触到了丰富的专业知识,逐渐培养了学习研究能力。借此机会,我要
41、衷心感谢我的指导老师杨瑞老师对我的教诲、关心和帮助。杨老师治学严谨,积极进取的工作作风以及平易近人的性格给我留下了深刻的印象。本论文是在指导老师杨瑞老师的精心指导下完成的。在论文的研究过程中,杨老师在学习和生活中给予我热情的关怀与帮助。在学习中,给我提供了一个宽松的学习环境,使我能充分发挥自己的思维和创造能力。从论文的选题,方案的制定以及论文的撰写,都得到了杨老师的热心帮助。在研究过程中,开阔了我的视野,为以后的学习、工作打下了坚实的基础。同时 ,要感谢课题组的其他同学,他们给予我无私的帮助和极大的帮助,共同攻克难关的经历将成为我美好的回忆。同时还要感谢大学三年来所有的老师,为我们打下电气专业
42、知识的基础;然后还要感谢所有的同学们,正是因为有了大家的支持和鼓励,此次毕业设计才会顺利完成。在此,向曾经帮助过我的同学表示感谢。最后,衷心的感谢电气工程系各位老师几年来对我谆谆不讳的教导与培养,使得我顺利完成学业。参考文献1康华光 电子技术基础数字部分(第五版).北京华中科技电子技术组 2007 2华成英 童诗白模拟电子技术基础(第四版)北京清华大学电子学教研组2006 3李凤霞 刘桂山 陈朔鹰 薛庆.c语言程序设计(第二版).北京. 北京理工大学出版社,2008. 4楼然苗 李光飞.单片机课程设计指导. 北京.北京航空航天大学出版,2007 5康华光.电子技术基础模拟部分m.第四版.北京:
43、高等教育出版社,.6阎石.数字电子技术基础m.第四版.北京:高等教育出版社,.7ajmalgodil.能够选择快速或慢充的充电器j.电子设计技术,.8胡燕燕,杨代华.基于单片机的智能充电器设计j.电子元器件应用,.9先锋工作室.单片机程序设计实例m.北京:清华大学出版社,.10华成英,童诗白.模拟电子技术基础m.北京:高等教育出版社.11康华光,邹寿彬.电子技术基础数学部分m.北京:高等教育出版社.12milos d. ercegovac. tomas-lang. introduction to digital system. john wiley sonm.13彭荣.数字电子技术基础m.武汉
44、:华中理工大学出版社.附 录附录1 倒计时器总原理图附录2 程序清单#include <>#include <>unsigned char data dis_digit;unsigned char key_s, key_v;unsigned char code dis_code11=0xc0,0xf9,0xa4,0xb0, 示有键按下,void proc_key() ea = 0; / 先关闭总中断 if(key_v & 0x01) = 0) / k4按下的话条件满足 if(tr1=0) tian-; tian+; tr1=1; if(tian >365)
45、 tian =0; dis_buf0 = dis_codetian / 100; /天的百位 dis_buf1 = dis_code(tian-(tian / 100)*100)/10; / 天的十位 dis_buf2 = dis_code(tian-(tian/100)*100)-(tian-(tian/100)*100)/10)*10&0x7f; / 天的个位加上小数点 else if(key_v & 0x02) = 0) / k3按下的话条件满足 tr1=0; hour+; if(hour > 12) hour = 0; dis_buf3 = dis_codehou
46、r / 10; /时十位 dis_buf4 = (dis_codehour % 10&0x7f); / 时个位加上小数点 else if(key_v & 0x04) = 0) / k2按下的话条件满足 tr1=0; min+; if(min >59) min = 0; dis_buf5 = dis_codemin / 10; /分十位 dis_buf6 = (dis_codemin % 10&0x7f); / 分个位加上小数点 else if(key_v & 0x08) = 0) / k3按下的话条件满足 sec+;tr1=0; if(sec>59)
47、 sec = 0; dis_buf7 = dis_codesec / 10; / 秒十位 dis_buf8 = dis_codesec % 10; / 秒个位 ea = 1; /开启总中断void timer0() interrupt 1/ 定时器0中断服务程序, 用于数码管的动态扫描/ dis_index - 显示索引, 用于标识当前显示的数码管和缓冲区的偏移量/ dis_digit - 位选通值, 传送到p3口用于选通当前数码管的数值, 如等于0xfe时,选通口数码管 / dis_buf - 显于缓冲区基地址 th0 = 0xfc; tl0 = 0x18; /再次给初值 w9=1; p3 = 0xff; / 先关闭所有数码管 if( dis_index=8) p0 = dis_bufdis_index; w9=0; /第九位选通 dis_index+; else p0 = dis_bufdis_index; p3 = dis_digit; /刚开始时dis_digit为0xfe,所以是先从p3口的最低位开始扫描 dis
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年手机贴膜教学设计区别
- 2026云南昆明市第三人民医院见习人员招聘16人笔试题库及一套参考答案详解
- 确认培训费用明细确认函7篇范本
- 2025-2026学年四季童趣音乐教案
- 2026重庆小蚂蚁人力资源服务集团有限公司招聘劳务派遣员工3人备考题库附参考答案详解【达标题】
- 2025-2026学年信息课教学设计三年级
- 2026云南玉溪市惠工社会服务中心招聘工会社会工作专业人才5人笔试题库(综合卷)附答案详解
- 2026广东中山七院第三方劳务派遣人员招聘2人笔试题库附答案详解【研优卷】
- 网络直播主播粉丝互动与商业价值KPI考核表
- 2026重庆新华书店有限公司管培生招聘45人备考题库及一套完整答案详解
- 访客入厂安全教育
- 雨课堂学堂在线学堂云《课堂教学技能实训(河北师范)》单元测试考核答案
- 内蒙古丰电能源储灰场Ⅱ格改造工程项目环境影响报告书
- 一级公路施工组织设计
- 制造企业生产产品质量追溯管理制度
- 2025中央企业重点领域常态化安全生产督导帮扶工作方案
- (更新)成人术后谵妄预防与护理专家共识课件
- 安全月活动总结培训课件
- 煤矿防灭火技术培训课件
- 大型商超销售数据分析报告
- ICU环境下严重颅脑创伤亚低温治疗的监护策略
评论
0/150
提交评论